Емельянов Эдуард Владимирович (eddy_em) wrote,
Емельянов Эдуард Владимирович
eddy_em

Category:

Допиливание FITS-обработчика

Итак, я продолжаю допиливать свой велосипед для работы с фитсами. Теперь добавлены еще кое-какие полезные штуки. Глядишь, до нового года хотя бы процентов 10 предполагаемого функционала запилю. А там еще немного — и будет автомат для технических ночей (а то и не только).

Чтобы перечислить возможности, просто сделаю:
./fitsread -h

Использование: fitsread [аргументы] [префикс выходного файла]

	Где аргументы:

  -4, --conn4=arg      label 4-connected components with giventhreshold
  -8, --conn8=arg      label 8-connected components with giventhreshold
  -B, --binarize=arg   binarize image by threshold (in %%from dynamic range)
  -D, --del-rec        удалить все записи с указанной подстрокой
  -a, --add-rec        добавить запись в FITS-шапку
  -b, --bottom=arg     the lowest value, all data less than 'bottom' vould be set to it
  -d, --del-key        удалить указанный ключ
  -h, --help           отобразить эту справку
  -i, --infile=arg     входной файл
  -o, --outfile=arg    выходной файл
  -p, --pipeline       установить параметры конвейера, аргументы: type:[help]:...
		type - тип преобразования (help для справки)
		help - список доступных для данного 'type' опций
  -s, --stat           отобразить статистические параметры входного и выходного изображения
  -t, --top=arg        the lowest value, all data more than 'top' vould be set to it
  -v, --verbose        уровень подробностей вывода (каждый -v увеличивает его)
  --inplace            записать изменения в тот же файл
  --mean               вычислить среднее арифметическое всех перечисленных изображений
  --median             вычислить медиану всех перечисленных изображений
  --rewrite            перезаписать выходной файл, если он существует (только с опцией -i)
  --sum                вычислить сумму всех перечисленных изображений

Итак, добавлены: работа с FITS-шапкой (добавление, изменение и удаление записей); обрезка по заданным уровням (нужно иной раз бывает при конвейерной обработке); пакетная обработка изображений (среднее арифметическое, медиана и сумма всех перечисленных в параметрах изображений); бинаризация изображения по заданному (в доле от динамического диапазона) уровню, если уровень указан как отрицательное число, бинаризованное изображение инвертируется; маркировка 4- и 8-связных областей (на выходе получается файл с нумерованными областями вроде картинок ниже).

Конечно, этого мало. Как минимум нужно еще добавить вычисление параметров пятен по найденным маскам с 4- или 8-связностью, а для этого нужно будет еще автоматом вычислять фон и вычитать из изображения. Кроме того, неплохо было бы еще добавить автоматическое "выпрямление" длиннощелевых спектров для большего удобства дальнейшей обработки (это я на будущее для применения со снимками с IRBIS), ну и работу с "пачками" изображений (когда в одном файле находится несколько изображений).

2015.12.22_17:24:50
Пронумерованные пятна на гартманнограмме

2015.12.22_17:27:06
Нумеруя связанные области инвертированного изображения легко вытащить фон для дальнейшего извлечения

Tags: fits, астрофизика, обработка изображений
Subscribe

  • Qt-creator на нескольких мониторах

    Сижу, значит, пишу код. И внезапно ощущаю нехватку одновременно открытых как минимум четырех кусков кода! А на одном основном мониторе (хоть и 2560…

  • Электронщики поймут

    Для тех, кто придумал бессвинцовку, должен быть отдельный котел со свинцом! (не мое) Reposted from dreamwidth:…

  • Шо, товарищи, facebook и watsapp — тыгыдым?

    Собственно, уже часа 2 с хвостиком не работают. Интересно: это роскомпозор охренел или что? Reposted from dreamwidth:…

promo eddy_em september 3, 12:13 8
Buy for 10 tokens
Уже больше полугода занимаюсь разработкой, вот, наконец-то в мастерских взялись за меня и начали выдавать первые детали. Сегодня сделал тестовую сборку (как обычно, местами пришлось "доработать напильником"): Пока прибор без названия (да и как-то не лезет в голову ничего, у меня нет…
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic
  • 2 comments