Implementacja algorytmu do C# (Sieci neuronowe, zdjęcia)

0

Witam.

Piszę z zapytaniem odnośnie pewnej implementacji algorytmu.
Otóż mam za zadanie zaimplementować algorytm do detekcji sęków wg artykułu:
https://www.researchgate.net/publication/220665710_Automated_visual_inspection_system_for_wood_defect_classification_using_computational_intelligence_techniques

Zdjęcia testowe w moim przypadku mają rozmiar 480x480.

Do tej pory zaimplementowałem proces selekcji ziaren(punkt 2.1 artykułu), zapisujący się do klasy "Input" zawierający współrzędne x,y(znormalizowane do postaci [0,1]) oraz wartości RGB dla poszczególnego ziarna(punkt 2.2 artykułu).

W tym momencie utknąłem na punkcie 2.3 i tworzeniu hyperbox'ów.
Nie do końca jestem pewien tego co mam zrobić z danymi wzorami, gdy na zdjęciu mam np. 2 sęki oddalone od siebie i chce je rozdzielić na 2 różne hyperbox'y.. Wiem tyle, że Bj jest hyperboxem określonym punktami min i max.
Pytanie moje dotyczy bardziej tego jak mam obliczyć to bj(Xh,Vj,Wj), bo w teorii mogę określić 1 hyperbox z punktami min-max w którym zawarte są wszystkie piksele z Input pattern z punktu 2.2 ale wtedy obliczając bj dla każdego puntu ze zbioru punktów ziaren względem tych punktów min-max otrzymuję wartość 1 dla bj. Nie wiem czy źle pojmuję ten punkt i dlatego kieruję moje pytanie tutaj.

Byłbym bardzo wdzięczny gdyby ktoś mógł zerknąć na artykuł i podpowiedzieć co zrobić krok po kroku do punktu 2.3.1 (3) bo ja powoli zaczynam tracić wiarę w to co znajduje się w tym artykule.

Kod:
https://pastebin.com/Q1s4Vzmi

Do linii 170 następuje proces tworzenia macierzy z punktu 2.2
Reszta kodu są to moje rozkminy co do dalszej części.

Dorzucam też przykładowy plik csv z danymi jakie uzyskuje i wykorzystuje oraz zdjęcie na jakim operuję i zaznaczonymi pikselami.

Z góry dziękuję za pomoc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1