Strona 1 z 1

Problem z konwersją obrazu przy fuzji

: 02 wrz 2012 12:45
autor: bikekowal
Witam,

Próbuję zaimplementować program dokonujący nałożenia (fuzji) dwóch obrazów - obrazu z kamery wizyjnej oraz obrazu z kamery thz. Proste nałożenie obrazów działa poprawnie, więc chciałem pójść dalej i nałożyć na obraz wizyjny obraz z kamery THz po binaryzacji. Niestety w tym miejscu zaczęły się schody. Otóż po binaryzacji dokonałem przemnożenia obrazu przez 255 aby wartości pikseli zarówno w wizyjnym jak i thz zgadzały się. Do tego momentu wszystko wydaje się poprawne. Następnie użyłem IMAQ imagetoarray żeby móc nałożyć obraz binarny na wizyjny - operację nałożenia robię w postaci macierzy. Niestety w tym miejscu coś nie gra, ponieważ efektem nałożenia obu obrazów jest czarny obraz, co więcej sama konwersja obrazu w funkcji IMAQ imagetoarray zwraca same zera - wygląda na to, że w tym miejscu jest problem. Co może być powodem? Będę wdzięczny za podpowiedzi.

Snippet kodu w załączniku.

Re: Problem z konwersją obrazu przy fuzji

: 05 wrz 2012 00:41
autor: smiga
Podmień dolną część kodu jak poniżej i będzie działać:

Problem z konwersją obrazu przy fuzji

: 05 wrz 2012 08:29
autor: bikekowal
Wygląda na to, że to działa, chociaż szczerze mówiąc muszę przyjrzeć się temu dokładnie, bo nie do końca rozumiem jak to działa i gdzie był mój problem (wolałbym na przyszłość unikać drugi raz tego samego problemu).

Re: Problem z konwersją obrazu przy fuzji

: 05 wrz 2012 11:17
autor: smiga
Zastosowałeś funkcję Index Array, która zwraca Ci jeden wiersz, czyli jedną linię obrazu. Ja zastosowałem Reshape Array, czyli zamieniłem tablicę 2D na 1D, w której kolejne linie obrazu układane są jedna za drugą ... bo tak dane przyjmuje funkcja Draw Flattened Pixmap.
Przy okazji, nie wiem czy nie łatwiej było by korzystać z funkcji dodawania obrazów itd. z palety IMAQ - robisz to tylko przy konwersji na obraz binarny, a pozostała część kodu korzysta z funkcji z palety Picture Functions.

Problem z konwersją obrazu przy fuzji

: 12 wrz 2012 10:31
autor: bikekowal
Faktycznie, racja. Zrobiłem drugą wersją opartą na IMAQ ADD i wszystko działa bezproblemowo. Dziękuję za pomoc.