-
1. Data: 2014-06-16 14:41:21
Temat: Filtr odwrotny do Gaussa w grafice
Od: Borneq <b...@a...hidden.pl>
Mam bibliotekę OpenCV:
zastosowanie filtru Gaussa dla rozmycia:
kernel_size = 7;
kernel = Mat::ones( kernel_size, kernel_size, CV_32F )
/ (float)(kernel_size*kernel_size);
filter2D(src, dst, ddepth , kernel, anchor, delta, BORDER_DEFAULT );
A teraz potrzebuje filtru który wyszarzałby cały obrazek, a wzmacniał
zmiany na tym obrazku, czyli gdy mamy ciemną plamę a na niej ciemną
kreską tylko trochę jaśniejszą oraz gdy mamy jasną plamę a na niej
kreskę jeszcze jaśniejszą, to aby po przefiltrowaniu uzyskać jasną
kreskę na szarym tle w obu przypadkach
Czy jest coś takiego możliwe?
-
2. Data: 2014-06-16 15:02:46
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: Borneq <b...@a...hidden.pl>
W dniu 2014-06-16 14:41, Borneq pisze:
> A teraz potrzebuje filtru który wyszarzałby cały obrazek, a wzmacniał
> zmiany na tym obrazku, czyli gdy mamy ciemną plamę a na niej ciemną
> kreską tylko trochę jaśniejszą oraz gdy mamy jasną plamę a na niej
> kreskę jeszcze jaśniejszą, to aby po przefiltrowaniu uzyskać jasną
> kreskę na szarym tle w obu przypadkach
> Czy jest coś takiego możliwe?
http://www.algorytm.org/przetwarzanie-obrazow/filtro
wanie-obrazow.html
-
3. Data: 2014-06-16 16:23:26
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: bartekltg <b...@g...com>
On 16.06.2014 14:41, Borneq wrote:
> Mam bibliotekę OpenCV:
> zastosowanie filtru Gaussa dla rozmycia:
> kernel_size = 7;
> kernel = Mat::ones( kernel_size, kernel_size, CV_32F )
> / (float)(kernel_size*kernel_size);
> filter2D(src, dst, ddepth , kernel, anchor, delta, BORDER_DEFAULT );
>
> A teraz potrzebuje filtru który wyszarzałby cały obrazek, a wzmacniał
> zmiany na tym obrazku, czyli gdy mamy ciemną plamę a na niej ciemną
> kreską tylko trochę jaśniejszą oraz gdy mamy jasną plamę a na niej
> kreskę jeszcze jaśniejszą, to aby po przefiltrowaniu uzyskać jasną
> kreskę na szarym tle w obu przypadkach
> Czy jest coś takiego możliwe?
Wykrywanie krawędzi i wyostrzanie obrazu.
Nie są to do końca niezależne hasła;)
Możesz popatrzeć też, jak obrazek wygląda gdy wytniesz mu niskie
częstotliwości. CO odpowiada chyba filtrowi Laplaca.
pzdr
bartekltg
-
4. Data: 2014-06-16 16:28:02
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: Borneq <b...@a...hidden.pl>
W dniu 2014-06-16 16:23, bartekltg pisze:
> Wykrywanie krawędzi i wyostrzanie obrazu.
> Nie są to do końca niezależne hasła;)
>
> Możesz popatrzeć też, jak obrazek wygląda gdy wytniesz mu niskie
> częstotliwości. CO odpowiada chyba filtrowi Laplaca.
JA w OpenCV najpierw zrobiłem wygładzanie macierzą 7x7 z wartościami
równymi 1/49, potem wyostrzanie macierzą 7x7 z wartościami -1/7 i
środkową = 8.
Wyniki zadowalające, można było zaobserwować że jądra mają na szarym
obrazie wartość pikseli <40
otrzymałem obraz https://i.imgur.com/LzR6viG.jpg
teraz jak scanliniami stwierdzić gdzie są jądra, odrzucając smugi?
-
5. Data: 2014-06-16 16:37:26
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: bartekltg <b...@g...com>
On 16.06.2014 16:28, Borneq wrote:
> W dniu 2014-06-16 16:23, bartekltg pisze:
>> Wykrywanie krawędzi i wyostrzanie obrazu.
>> Nie są to do końca niezależne hasła;)
>>
>> Możesz popatrzeć też, jak obrazek wygląda gdy wytniesz mu niskie
>> częstotliwości. CO odpowiada chyba filtrowi Laplaca.
>
> JA w OpenCV najpierw zrobiłem wygładzanie macierzą 7x7 z wartościami
> równymi 1/49, potem wyostrzanie macierzą 7x7 z wartościami -1/7 i
> środkową = 8.
Eeee... ale po co? Nie wyostrzaj.
Czemu używasz takich dzikich jąder, zamiast gaussowskeigo
(i Laplace jak już chcesz wyostrzać).
> Wyniki zadowalające, można było zaobserwować że jądra mają na szarym
> obrazie wartość pikseli <40
> otrzymałem obraz https://i.imgur.com/LzR6viG.jpg
> teraz jak scanliniami stwierdzić gdzie są jądra, odrzucając smugi?
Wywal jak jest za duże.
Ja bym to robił inaczej. Na przefiltrowanym wygłaczonem obrazku szukał
minimów, Znajduje najmniejsze, sprawdzam, czy ksztatl minimum jest
z grubsza elipsą o rozmiarach z jakeigoś przedziału
(choćby czy zmieszczę małe koło w obszarze odpowiednio ciemnym,
a potem wiekszy okrąg już będzie jasny).
Potem kasujuę ten obszar i szukam kolejnego jądra. Przerywam, gdy
znalezione minimum jest za jasne.
pzdr
bartekltg
-
6. Data: 2014-06-16 16:56:50
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: Borneq <b...@a...hidden.pl>
W dniu 2014-06-16 16:37, bartekltg pisze:
> Eeee... ale po co? Nie wyostrzaj.
Jak nie wyostrzam, to jądra nie są ciemne tylko blade, musiałbym
threshold ustawić na ponad 100 a to oznacza, że wchodziły by inne rzeczy.
> Czemu używasz takich dzikich jąder, zamiast gaussowskeigo
> (i Laplace jak już chcesz wyostrzać).
Dla prostoty, choć może Gauss lepszy od uśredniania a Laplace lepszy od
mojego wyostrzania.
> Wywal jak jest za duże.
>
> Ja bym to robił inaczej. Na przefiltrowanym wygłaczonem obrazku szukał
> minimów, Znajduje najmniejsze, sprawdzam, czy ksztatl minimum jest
> z grubsza elipsą o rozmiarach z jakeigoś przedziału
Na wyostrzonym można binarnie szukać: te piksele które są <40 i te >=40
Ja zamierzam robić tak, że scanliniami szukam piksela dostatecznie
ciemnego (<40) będzie to najbardziej wysunięty do góry i w lewo piskel
grupy, potem chcę zbadać jak wielka ta grupa, ale tu problem, bo jak
grupa będzie paskiem "/" lub "\" to dostanę zakres i nie odróżnię od koła.
-
7. Data: 2014-06-16 17:59:36
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: bartekltg <b...@g...com>
On 16.06.2014 16:56, Borneq wrote:
> W dniu 2014-06-16 16:37, bartekltg pisze:
>> Eeee... ale po co? Nie wyostrzaj.
>
> Jak nie wyostrzam, to jądra nie są ciemne tylko blade, musiałbym
> threshold ustawić na ponad 100 a to oznacza, że wchodziły by inne rzeczy.
Jakim cudem. Jeśli jądro filtru jest mniejsze niż jądro komórki
(ops, nazewnictwo) to środkowy piksel musi pozostać tego samego
koloru.
>> Czemu używasz takich dzikich jąder, zamiast gaussowskeigo
>> (i Laplace jak już chcesz wyostrzać).
>
> Dla prostoty, choć może Gauss lepszy od uśredniania a Laplace lepszy od
> mojego wyostrzania.
>> Wywal jak jest za duże.
>>
>> Ja bym to robił inaczej. Na przefiltrowanym wygłaczonem obrazku szukał
>> minimów, Znajduje najmniejsze, sprawdzam, czy ksztatl minimum jest
>> z grubsza elipsą o rozmiarach z jakeigoś przedziału
>
> Na wyostrzonym można binarnie szukać: te piksele które są <40 i te >=40
> Ja zamierzam robić tak, że scanliniami szukam piksela dostatecznie
> ciemnego (<40) będzie to najbardziej wysunięty do góry i w lewo piskel
> grupy, potem chcę zbadać jak wielka ta grupa, ale tu problem, bo jak
> grupa będzie paskiem "/" lub "\" to dostanę zakres i nie odróżnię od koła.
Jak mówiłem poprzednio, trzeba próbować i sprawdzać.
Ja tylko powiedziałem, jak ja bym to robił. :)
pzdr
bartekltg
-
8. Data: 2014-06-16 18:58:31
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: Borneq <b...@a...hidden.pl>
W dniu 2014-06-16 17:59, bartekltg pisze:
> Jakim cudem. Jeśli jądro filtru jest mniejsze niż jądro komórki
> (ops, nazewnictwo) to środkowy piksel musi pozostać tego samego
> koloru.
Ale:
- jądra są ciemniejsze i jaśniejsze, nie ma samych ciemnych jąder
- jądra to kropki, często mniejsze niż 7x7
- nawet jak jeden środkowy piksel będzie ciemny, to ja chcę aby całe
jądro było wystarczająco ciemne np <50 aby je zaznaczyć
-
9. Data: 2014-06-16 20:07:21
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: bartekltg <b...@g...com>
On 16.06.2014 18:58, Borneq wrote:
> W dniu 2014-06-16 17:59, bartekltg pisze:
>> Jakim cudem. Jeśli jądro filtru jest mniejsze niż jądro komórki
>> (ops, nazewnictwo) to środkowy piksel musi pozostać tego samego
>> koloru.
>
> Ale:
> - jądra są ciemniejsze i jaśniejsze, nie ma samych ciemnych jąder
Nie problem.
> - jądra to kropki, często mniejsze niż 7x7
Zwieksz jądro, zmniejsz std jądra
> - nawet jak jeden środkowy piksel będzie ciemny, to ja chcę aby całe
> jądro było wystarczająco ciemne np <50 aby je zaznaczyć
To ma znaczenie w Twojej metodzie wyznaczania jąder,
w proponowanej przeze mnie - nie.
pzdr
bartekltg
-
10. Data: 2014-06-16 20:15:13
Temat: Re: Filtr odwrotny do Gaussa w grafice
Od: Borneq <b...@a...hidden.pl>
W dniu 2014-06-16 20:07, bartekltg pisze:
> To ma znaczenie w Twojej metodzie wyznaczania jąder,
> w proponowanej przeze mnie - nie.
Twoja metoda, to szukanie punktu minimum zamiast ustalonej wartości
jasności? Jak szukać minimum, tych minimów może być wiele. Czy takimi
metodami, jak matematyczne szukanie minimów dwuwymiarowej funkcji, a
może skanować idąc od góry i co dalej? Jak wybierać punkty początkowe do
szukania minimów aby znaleźć wszystkie mimima lokalne?