Elo jak coś jestem zielony w temacie image processingu. Znalazłem w jednej z publikacji naukowych takie coś jak dzielenie obrazu "A" przez obraz "A" z filtrem "Gaussian Blurrr" na czarnobiałym obrazie i w sumie zainteresowało mnie to bo cięzko cokolwiek znaleźć w internetach na ten temat. Jest tylko o filtrze i thats all. Robiliście coś takiego? Jakby to mogło wyglądać? Samemu zastosowałem zwykłe dzielenie, tj zamieniłem oba obrazy na tablice w Pythonie i podziliłem je przez siebie. Efekt nie jest taki ładny jak w publikacji, ale coś już widać. Macie pomysł gdzie mogę poczytać na ten temat, albo chociaż jak dokładnie by to mogło wyglądać?
@JakTamCoTam: dokładnie ten trik stosuję w GIMP-ie, aby rozjaśnić zdjęcia dokumentów zrobione telefonem, gdzie oświetlenie jest nierównomierne. Wiele razy mi pomogło na studiach, żeby dało się to potem wydrukować. Patrz też http://gimpchat.com/viewtopic.php?f=11&t=5948
@RicoElectrico: dzięki, natomiast zauważyłem, że wynik jest bardzo ciemny a po rozjaśnienu wcale nie jest lepiej. Te linie, które są tu białe są normalnie bardzo szare i ledwie widoczne. Próbuję w kodzie jakoś rozjaśniać te pixele które mają rgb większe niż np 100, ale też nie wychodzi za dobrze. Jest jakiś filtr, który rozjaśnia jedynie te najjaśniejsze elementy?
@JakTamCoTam: Pracowałem przy tym w celu dekodowania bardzo małych QR z skanów wysokiej rozdzielczości, jest to bardzo słabo udokumentowane. Jak ogólnie i całe OpenCV :D
Wartości 77 i 11 is the way to go, one odpowiadają za siłę rozmycia Gaussa i finalny efekt. Pokombinuj z nimi, ale z tego co pamiętam była między nimi jakaś zależność ( musiały się
@JakTamCoTam: nie, nie jest potrzebna, chyba nawet lepiej - z wysoką rozdzielczością zaczynają się problemy tego z python jest jednak wolny. Podebuguj sobie kilka wartości zaczynając od 11,1 do wyższych zapisując obrazek za każdym razem, bardzo szybko ogarniesz złoty środek ( ͡°͜ʖ͡°)
@NewEpisode: dobra zacząłem się tym bawić i faktycznie coś tam działa, ale nie tak jakbym chciał XD. Jeżeli dobrze rozumiem tą metodę to ona ma za zadanie coś ala uwidocznić nagłe zmiany kolorów? No, bo moje obrazy mają ten problem, że najważniejsze elementy są bardzo rozmyte z tłem, coś jak na dołączonym obrazku. Interesują mnie głównie te linie. Na moim są troszkę bardziej widoczne, ale still. Kiedy aplikuje tą metodę to
@JakTamCoTam: dobra poeksperymentowałem już i na wartościach 11,1 i 9,1 wygląda już całkiem całkiem. Chociaż brakuje do tego co goście zrobili w tej pracy, ale osobiście myślę, że to może być wynik słabej jakości (tj mojego screenshota z tamtego zdjęcia XD) albo coś jeszcze podrasowali o czym nie pisali w pracy
@JakTamCoTam: No i to już jest progres, gratki ( ͡°͜ʖ͡°)
Patrząc na swój soft jeszcze znalazłem linijkę:
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) Nie pamiętam jednak do czego ona służy, niestety zapomniałem skomentować. Tyle mi wiadomo po samym kodzie że CHYBA zmienia obrazek z czarno-białego na RGB, i robi to po rozmyciu Gaussa. Będę miał chwilę w domu to coś spróbuje też pokombinować ( ͡°͜
Właśnie się rozstałem po 5 latach związku. Czuję się #!$%@?, ale myślę, że tak będzie lepiej. Kiedyś zbiorę siły i może napiszę coś więcej na ten temat. #zwiazki
Robiliście coś takiego? Jakby to mogło wyglądać? Samemu zastosowałem zwykłe dzielenie, tj zamieniłem oba obrazy na tablice w Pythonie i podziliłem je przez siebie. Efekt nie jest taki ładny jak w publikacji, ale coś już widać. Macie pomysł gdzie mogę poczytać na ten temat, albo chociaż jak dokładnie by to mogło wyglądać?
#grafikakomputerowa #przetwarzanieobrazu #imageprocessing #python #programowanie
Patrz też http://gimpchat.com/viewtopic.php?f=11&t=5948
Próbuję w kodzie jakoś rozjaśniać te pixele które mają rgb większe niż np 100, ale też nie wychodzi za dobrze. Jest jakiś filtr, który rozjaśnia jedynie te najjaśniejsze elementy?
img = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVETHRESHGAUSSIANC, cv2.THRESHBINARY, 77, 11)
Wartości 77 i 11 is the way to go, one odpowiadają za siłę rozmycia Gaussa i finalny efekt. Pokombinuj z nimi, ale z tego co pamiętam była między nimi jakaś zależność ( musiały się
Patrząc na swój soft jeszcze znalazłem linijkę:
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
Nie pamiętam jednak do czego ona służy, niestety zapomniałem skomentować. Tyle mi wiadomo po samym kodzie że CHYBA zmienia obrazek z czarno-białego na RGB, i robi to po rozmyciu Gaussa. Będę miał chwilę w domu to coś spróbuje też pokombinować ( ͡° ͜