LinuxForum.Fans
Тема

Изучаем изображения через консоль

Автор: elektryk 36 сообщений 5611 просмотров
29.09.2014 17:13 · отредактировано #394220

Доброго времени.
К моему великому разочарованию не смог найти даже приближенно ответ у гигантов Google Yandex и их подобным, на простой, с виду, вопрос:
Есть PNG изображение, обычная картинка с кривой посередине, как можно прочитать координаты этой кривой построчно слева направо, имея ноль снизу слева как основа отчёта (понимая при этом, что изображение строится сверху слева).
пример:
http://tesis.lebedev.ru/upload_test/files/flares_20140919.png
в самом лучшем случае должен получиться текстовый файл, где идут координаты и цвет (как в примере интересуют координаты красной линии попиксельно)
в идеале это bash скрипт

29.09.2014 17:24 #394222

Вы, однако, затейник! Все пользуются для этого трассировкой растра в вектор. А тут такой пердюмонокль! Что ж, для начала декодируем по алгоритму Хаффмана, потом разжимаем LZ77, потом переводим в построчные байты, потом исключаем шум в виде лишних цветов и делаем строки битными, а потом любой школьник напишет скрипт анализа.

29.09.2014 17:33 #394225

А какая глобальная задача? Мне кажется вы немного перемудрили с реализацией... А так то смотрите в сторону OCR, но без напильника тут не обойтись :)

29.09.2014 17:48 #394227
"beliy" написал:
А так то смотрите в сторону OCR

К сожалению оно никак в СПО и Линуксе.

29.09.2014 17:51 · отредактировано #394229
"stranger" написал:
К сожалению оно никак в СПО и Линуксе.

Неужели даже координаты и цвет точек не умеет определять? :)
Думаю вы таки немного недооцениваете его - еще, конечно, далеко до идеала но и не так плохо как вы думаете...

29.09.2014 18:00 · отредактировано #394230

beliy, я работаю с компьютерной графикой ровно двадцать лет. С Линуксом - с конца прошлого века. С СПО - с момента возникновения. Всё так плохо и это факт. Мне это очень печально, но фактом от того это быть не перестаёт. Более того, OCR в принципе давно не развивается. Распознание образов - да, наша военная наука преуспела в этом более чем (для наведения ракет). Распознание символов текста: опять же наша, хоть и частная лавочка - впереди планеты всей. Но с трассировкой графики полная бЯда даже у несомненного лидера отрасли Corel. Поверьте или проверьте - править трассу растра мелкого разрешения дольше, чем сделать её руками.

29.09.2014 18:01 #394231

А при чём тут OCR? Оно же не для графиков. Можно конвертировать png в bmp какой-нибудь
утилитой, одна так и называется - convert и не надо будет самому распаковывать картинку.
А затем уже самому написать программу, которая в bmp-файле ищет этот график по цвету
точек и выводит их координаты.

Пётр.

29.09.2014 18:05 #394234

Peter, Вы и впрямь считаете, что если уже компрессированный формат перекинуть в lossless, то там восстановится всё как в оригинале? Ну типа PNG или JPEG в BMP или RLE?

29.09.2014 18:13 #394235
"Peter" написал:
А при чём тут OCR?

притом что любая OCR считывает координаты и цвет точек до распознавания, что, в принципе, и надо. Но как уже писал без напильника не обойтись. Хотя возможно есть и более простые способы...

"stranger" написал:
beliy, я работаю с компьютерной графикой ровно двадцать лет. С Линуксом - с конца прошлого века. С СПО - с момента возникновения. Всё так плохо и это факт. Мне это очень печально, но фактом от того это быть не перестаёт. Более того, OCR в принципе давно не развивается. Распознание образов - да, наша военная наука преуспела в этом более чем (для наведения ракет). Распознание символов текста: опять же наша, хоть и частная лавочка - впереди планеты всей. Но с трассировкой графики полная бЯда даже у несомненного лидера отрасли Corel. Поверьте или проверьте - править трассу растра мелкого разрешения дольше, чем сделать её руками.

Я, конечно, уважаю ваш опыт и признаю что лично я с графикой на низком уровне не работал, но причем здесь трассировка графики, если судя по т3 преобразовывать в вектор не требуется?

29.09.2014 18:24 #394237
"beliy" написал:
если судя по т3 преобразовывать в вектор не требуется

Конечно не требуется, но это ж не я сказал OCR! :D Просто очевидно, что вектор привести к нужному цифровому выхлопу секунды, а долбаться с растром придётся примерно по тому алгоритму, что я обозначил в начале.

29.09.2014 18:58 · отредактировано #394239
"stranger" написал:
Конечно не требуется, но это ж не я сказал OCR!

Но то что я сказал тоже не подразумевает перевод в вектор... Если проанализировать принцип работы любой OCR, то все начинается с распознавания координат точек и их цветов, а уже далее применяются разнообразные механизмы оптимизации и распознавания. Но мы ведь можем используя наработки Open source проекта использовать только начальную стадию но с уже дальнейшими своими алгоритмами.
Повторюсь с графикой на низком уровне не работал и могу заблуждаться... К тому же было бы не плохо узнать глобальную задачу - вполне возможно что можно обойтись и без распознавания координат с готовой графики.

29.09.2014 18:58 #394240

хм, а как же всем извесный motion работает? он же сравнивает сдедующий слайд с предыдущим, и из разницы делает вывод, изменилось что-то или нет. может это не совсем по теме, но разницы я не вижу, так как он работает с пикселями, и настройках можно указать поле за которым можно следить.

29.09.2014 19:21 #394242
"beliy" написал:
а уже далее применяются разнообразные механизмы

Механизмы далее значения не имеют. Уже на этой стадии современные механизмы OCR, даже проприетарные и самые совершенные сработают только при гарантированной контрастности растра. А это 1) высокое разрешение (чего в приведённом примере нет) 2) Высокая плотность контрастной заливки (что в приведённом примере, к счастью, есть)

"elektryk" написал:
может это не совсем по теме,

Вы правы. Даже совсем не по теме.

29.09.2014 21:36 #394264
stranger написал:
Peter, Вы и впрямь считаете, что если уже компрессированный формат перекинуть в lossless, то там восстановится всё как в оригинале? Ну типа PNG или JPEG в BMP или RLE?

Я считаю, что BMP анализировать просто, а как там восстановится и что считать оригиналом -
уже неважно, т.к. в наличии только PNG.

Пётр.

29.09.2014 23:16 #394277
Peter написал:
Я считаю, что BMP анализировать просто
Пётр.

Покажите пример! Научите нас, недостойных Вашего Знания! PNG-изображение дано топикстартером. Парсинг его - Ваш гуру-отчёт!

Peter написал:
как там восстановится и что считать оригиналом - уже неважно

Ну конечно неважно для того, кто не имеет ни малейшего понятия о компьютерной графике, для того, кто абсолютно ничего не знает о форматах компрессии графических файлов, для того, кто вообще только губки надувает не умея ничего.

Не-Peter.

29.09.2014 23:31 #394282

elektryk, т.е. нужно выдернуть координаты точек красной линии в примере?

29.09.2014 23:52 #394284
stranger написал:
[quote=Peter]Я считаю, что BMP анализировать просто
Пётр.

Покажите пример! Научите нас, недостойных Вашего Знания! PNG-изображение дано топикстартером. Парсинг его - Ваш гуру-отчёт!

Peter написал:
как там восстановится и что считать оригиналом - уже неважно

Ну конечно неважно для того, кто не имеет ни малейшего понятия о компьютерной графике, для того, кто абсолютно ничего не знает о форматах компрессии графических файлов, для того, кто вообще только губки надувает не умея ничего.

Не-Peter.[/quote]
Я и не предлагал разбирать непосредственно PNG. Для его преобразования в BMP надо, разумеется,
воспользоваться существующей утилитой, а не придумывать свою.
Как восстановится - разумеется, неважно, потому что ничего другого нет,
кроме имеющегогося PNG. Лишь бы он распаковался.

Пётр.

30.09.2014 00:27 · отредактировано #394288
"Peter" написал:
Для его преобразования в BMP надо, разумеется,
воспользоваться существующей утилитой

Дорогой Петер! Если Вы взяли оригинал без потери качества и ОДИН РАЗ КОМПРЕССИРОВАЛИ, то обратно оригинальное качество Вы НИКОГДА НЕ УВИДИТЕ.


Смиритесь с законами Вселенной, где Вы вынуждены жить.

30.09.2014 01:05 #394296
"stranger" написал:
Если Вы взяли оригинал без потери качества и ОДИН РАЗ КОМПРЕССИРОВАЛИ, то обратно оригинальное качество Вы НИКОГДА НЕ УВИДИТЕ.

Причем здесь качество исходника (который когда-то был lossless), если исходник уже недоступен (есть то же изображение, но в формате с потерями)??? Вам же сказали:

"Peter" написал:
Как восстановится - разумеется, неважно, потому что ничего другого нет, кроме имеющегося PNG. Лишь бы он распаковался.

Речь не о том, а в итоге, как всегда, один флуд.

Войдите или зарегистрируйтесь, чтобы ответить.