Гледайки вашето резултатно изображение, мисля, че използвате само H канала на оригиналното изображение във вашия алгоритъм. Фалшиво положителното откриване може да се наследи от това, че част от здравата кожа има съвсем същата H стойност, отколкото хематома. Можете да видите на qrey-мащабното изображение на H канал, че и двете части имат подобни стойности:
Разликата между двете части е стойността на насищане. На следното изображение можете да видите S канала на оригиналното изображение и той показва перфектно, че при хематома сатурацията е много по-висока, отколкото в друга част на ръката:
Това беше очаквано, тъй като хематомът има много по-силен цвят от здравата кожа.
Затова ви предлагам да използвате както H, така и S канал във вашия алгоритъм, което означава, че трябва да вземете предвид само тези части от H изображението, където S изображението съдържа високи стойности на насищане. Възможно и просто решение да направите това е, че бинаризирате както H, така и S изображения и с операция AND можете да изпълните това филтриране:
H изображение след бинаризация: S изображение след бинаризация: Изображение след H&S операция: Можете да видите, че на резултатното изображение само частта с хематома е бяла (с изключение на известен шум, но можете да го премахнете лесно, например по размер или чрез морфологично филтриране).
РЕДАКТИРАНЕ
Важно е да се отбележи, че бинаризацията е една от най-важните (а понякога и много сложни) стъпки в алгоритмите за откриване на обекти, а именно бинаризацията е първият акцент на обектите за откриване.
Ако външните условия (осветление, цвят на обектите и т.н.) не се променят значително от изображение на изображение, можете да използвате фиксирани прагове за бинаразиране. Ако тази постоянна среда не може да бъде осигурена, трябва да използвате по-сложни методи. Има много възможности, които можете да използвате, тук можете да прочетете някои примери:
Няколко решения се основават на анализа на хистограмата: на хистограмите с обекти винаги има повече локални максимуми, чиито позиции могат да варират в зависимост от средата и ако ги намерите, можете лесно да адаптирате прага на бинаризация.
Например хистограмата на H канала на оригиналното изображение е следната: Първият максимум принадлежи на фона , втората към кожата и последната към хематома. Може да се предположи, че тези 3 прага могат да бъдат намерени във всяко изображение, само че техните позиции варират в зависимост от осветлението или от други условия. За да поставите праг между 2-рия и 3-тия локален максимум, може да е добър избор да подчертаете хематома.
Накрая ви предлагам да прочетете следната статия за прагове в OpenCV: OpenCV - Прагове
person
Tibor Takács
schedule
06.02.2015