Намиране на център на неправилна фигура в равнина
Не съм чел за страшния матан и за тази задача. Но бих се опитал да го реша по следния начин върху реални изображения: 1) След като направих копие на изображението, бих приложил филтъра за рязкост няколко пъти, избирайки стойността на матрицата, така че да работи с по-голям контраст. В резултат на това червените и черните зони ще се открояват по-ясно. 2) В друго копие на филтрираното изображение ще премахне компонентите на зеления/синия цвят. И бих намерил плътни червени области + подчертавам центровете в тях. Центърът ще бъде търсен, като се премине през всички точки на областта и се избере тази с максималната сума на квадратите на разстоянията ((x2-x1)**2 + (y2-y1)**2) до други точки в нейната област. 3) След това се уверете, че центърът на червената зона е точно в черната зона. И след това експериментирайте още.
Търсене на червени зони. Търсих след филтъра за изостряне на пълноцветна картина (тоест RGB компонентите се запазват). Бих задал число (да речем b=1/25 от размера на изображението). И бих потърсил квадрат в изображението (или по-скоро кръг с радиус b) със следните свойства. Така че всички точки в него имат червен компонент от най-малко 80%, а синьо и зелено - не повече от 15% (числата можете да изберете сами).
И тогава вече може да се усложнява и да се копае към нискочестотни, високочестотни, IIR и FIR филтри и т.н. :) Късмет!
В преследване на намиране на области. След намереното квадратче търсим от границите му навън, докато цветът на точките задоволи същото правило като цвета на квадрата.
Но ако се интересувате от този вид задачи.Яростно и яростноСъветвам ви да прочетете за основите на цифровата обработка на сигнали (където матана е на ниво матрици и редове, разширения на Фурие и т.н.). И можете да научите визуално с изпомпването на програмирането в Java. Написахме филтър - прекарахме снимки през него и вижте резултата(Можете ясно да видите какво се е случило, за разлика от сухото четене на книги). След това оптимизирайте кода, така че резултатът да се получи по-бързо. След това навийте графичния интерфейс отгоре в бъдещето или уеб лицето.
Ако сте студент или чирак (не знам) - можете дори да имате курсови работи и т.н. направи по тази тема.