Pull to refresh

Comments 32

UFO just landed and posted this here
говорят, в новом айфоне улучшен алгоритм — пробуйте :)
Все здорово! Интересно было почитать, но по своему опыту могу сказать с уверенностью в 85%: Вам бы подошла обычная двумерная корреляция. Эталоны у вас имелись. Это как минимум дало бы Вам несколько, довольно точных ROI(областей интереса).
Сам люблю подобные задачки(на практике имею дело с подобными Вашим изображениями), и по началу, начинаю открещиваться от корреляции и думать, что можно придумать метод быстрее/точнее/менее ресурсоемкий. В итоге 65%/35% — в пользу корреляции.
а я пробовал. это нужно сгенерить несколько масштабов, несколько углов поворта для каждого эталона и применить это во сдвигом как максимум в толщину проволочки! Т.е. если мы возьмем 5 штук по масштабу, 10 углов, 16 образцов = 800 корреляций на каждое окно!
Только на GPU. Мне же удалось, из-за специфики, свести задачу к одномерной.
То есть, еще одно условие задачи -меняющийся масштаб? Тогда согласен. Корреляция — ты кто такой? Давай, до свидания!

PS: Повороты эталона в +-10 градусов — корреляции не страшны. Проверено)
в условиях было сказано, что масштаб известен, потом выяснилось. что известен он только приблизительно :) где-то +-10%.
Плюс к тому, я заметил, что на длинных кадрах масштаб в разных частях чуть отличался — издержки геометрии съемки.
кстати, изначально в качестве детектора я таки использовал свертку с прямоугольным вертикальным ядром примерно равным ширине толстой проволочки — описанный метод оказался лучше.
Поправьте меня, если я не прав. По этим эталонам определяется чувствительность, и рассчитаны они на человека, наверное. Вот я, например, на последнем снимке вижу только 4 проволоки.
я минимум 6 вижу :)
но для локализации эталона 3ёх вполне достаточно
они нужны для определения толщины сварного шва.
Я правильно понимаю, что эталон нужен, чтобы определять мощность излучения? Т.е. чем больше видно полосок, тем слабее излучение, и, соответственно, темнее шов. Глубина (она же толщина) шва определяется по его светлости, а эталон нужен для сравнения, так?
эталон нужен чтобы определить толщину шва.
конечно, сам шов светлее фона, но зависимость, хоть и линейная (тоже надо проверить, может там экспонента...) может иметь различный коэффициент наклона в различных условиях. а эталон всегда имеет известный диаметр, поэтому отпадает необходимость очень точной калибровки прибора, что в полевых условиях, наверное, очень приятственно.
Коллега netmaxed, вот не в обиду, но вы, к сожалению, получаете двойку по специальности «Основы рентгеновского неразрушающего контроля». Вам дали картинки, но плохо объяснили что к чему (хотя поставленную задачу вы формально решили).
Это IQI эталон и он служит для определения качества рентгеновского изображения. Никакую «толщину шва» с его помощью вы и близко не определите, да и «необходимость очень точной калибровки» он не отменяет.
Возьмите, пожалуйста учебник Industrial Radiography и почитайте. Глава 13.3 на стр 110 — как раз про это.
Я переживаю за коллегу. Надеюсь, он за «Цифровая обработка сигналов и изображений» хоть пятерку получает?
If, for instance, the diameter of the thinnest wire visible to the naked eye is 0.2 mm and material thickness at the point of exposure is 10 mm, wire discernibility or wire recognizability is quoted as 2 %.

Как я и предполагал выше, эталоны рассчитаны на восприятие человеческого глаза. Т.е. получается, что данный метод будет оценивать качество снимков выше, чем человек. А как потом ищутся сами дефекты с учетом качества снимков? Если их ищет человек, то он же может пропустить дефекты, видимые для данной системы?
я так понимаю из разговоров, что следующим заданием будет как раз поиск соответствующих дефектов :)
Ну тут ваша задачка из «поиска простого на сложном» плавно превратится в «поиск сложного на простом».- это я к тому, что придётся повозиться чуть больше (впрочем это зависит от постановки задачи, конечно — там поиск, как правило, не очень сложный, а вот классификация может причинить головную боль)
шов сам по себе структура богатая на градиенты и всевозможные артефакты.
посмотрим, я еще пока не видел кадров с дефектами :)
Да это так — понятно, что программа, используя алгоритмы, найдёт больше, чем видит оператор (как правило, минимум одна проволочка выигрывается всегда). Вообще такие системы бывают двух типов — для контроля визуального (сидит оператор и тупо рассматривает каждое изображение) и автоматического (отбраковку выполняет программа). Если данная система предназначена для визуального контроля, то результат программы не будет принят, сколько бы там алгоритм не нашёл. Это разве что небольшая помощь оператору. Если же заказчик целится в автоматическую систему, то предложенный алгоритм вполне имеет смысл для автоматизированной проверки качества изображения. По уму там надо не только выдавать заключение «нашёл столько-то проволочек», но ещё добавить к каждой проволочке параметр, показывающий, насколько уверенно она распозналась (грубо говоря контраст). Тогда результат работы можно привести в соответствие с заключением «гологлазого» оператора. При автоматическом поиске дефектов как правило, пороговые значения отбраковки настраивают так, чтобы в брак уходило некоторое количество годных изделий с «пороговыми» дефектами (которые потом могут быть просмотрены оператором). Иногда сидит оператор и перед каждой проверкой визуально контролирует проволочный индикатор, и если качество удовлетворительное, то даёт команду на автоматическую проверку — тут этот алгоритм тоже может помочь. В общем это производственный процесс и он от заказчика зависит, но в конечном итоге всё регулируется ГОСТами ну или стандартами той страны, куда будет поставлена эта система.
Вы все правильно и красиво говорите про ГОСТ и стандарты. И я так думал, пока не встретился с двумя понятиями — "план" и "премия". А еще есть второстепенные понятия типа — "не скандальный заказчик". Поэтому фраза (и точно такие же мои рассуждения при написании алгоритмов) в духе —
При автоматическом поиске дефектов как правило, пороговые значения отбраковки настраивают так, чтобы в брак уходило некоторое количество годных изделий с «пороговыми» дефектами
разбиваются ими в пух и прах.
Еще вопрос. Вы переводили TIFF к простому bmp в градациях серого? Это тоже существенно сократило бы требуемые ресурсы для постобработки.
И еще. Сам пользуюсь Intel IPP. Если у Вас «железо», на котором ведется анализ содержит заветную надпись Intel Inside, то эта библиотека — манна небесная. Не сочтите за рекламу только)
я писал либу, которая будет работать в другой программе. так что на вход либы уже подается массив интов.
для тестирования, конечно, пришлось самому открывать тиффы, которые оказались 16бпп градаций серого, с этим тоже пришлось повозиться. Но LibTiff от BitMiracle легко прикрутилось и вполне даже работает.
За Intel IPP спасибо, посмотрю. Но либа должна работать на любом железе :)
Можно вопрос не по теме? Что это за проволочки и для чего они?
Это проволочки для определения качества рентгеновского изображения. При сварке (или эксплуатации) шва могут образоваться дефекты — туда могут попасть пузырьки воздуха, могут образоваться трещины, и т.д. Задача в том, чтобы гарантированно найти такие дефекты, размер которых превышает некий пороговый уровень. Сможет система обнаружить такие дефекты или нет — зависит от многих параметров (толщина шва и материала, параметров рентгеновского излучения, качества приёмника изображения (плёнка, усилитель или детектор), и т.д.). Чтобы определить качество — на данный шов накладывают такой вот эталон и смотрят — сколько проволочек будет видно. Толстые, понятное дело будут более контрастны, тонкие будут не видны. А дальше есть таблицы, в которых описано — сколько проволочек должно быть видно для определённого класса системы. На основе этого делается заключение о пригодности системы для контроля данного изделия. В каждой стране эталоны немного отличаются, но принцип схож что в Америке, что в Америке, что в России. Я парой комментов выше ссылку дал, где можно подробнее почитать.
Крутяк! Насколько сложные вычисления нужны для того, что мозг делает быстро и уверенно :)
мозг — асинхронная дичайше-распараллеленная система, там, конечно, свои правила.
посмотрим что получится из IBMовских нейрочипов…
Друзья, не могли бы скинуть названия книг по этой тематике?
UFO just landed and posted this here
Спасибо за ссылки :)
Спасибо за ссылки :)
Sign up to leave a comment.

Articles