Dalam kelanjutan artikel tentang mengembalikan gambar yang tidak fokus dan buram, saya ingin berbagi hasil memulihkan gambar nyata menggunakan filter Wiener. OpenCV 3.4 digunakan sebagai pustaka pemrosesan gambar. Kameranya adalah Nikon D320, lensa Nikon DX AF-S NIKKOR 18-105mm, pemfokusan dilakukan secara manual, pemotretan dilakukan tanpa tripod.
Hasil Pemulihan Gambar Tidak Fokus
Selama defocusing, sistem distorsi didekati dengan baik oleh fungsi hamburan titik silinder (PSF) dari jari-jari r.

PSF silinder
Di bawah ini adalah hasil dari memulihkan tiga gambar yang benar-benar tidak fokus pada objek yang sama (halaman buku). Pemotretan dilakukan tanpa tripod dari jarak sekitar 50 cm. Derajat pengaburan lensa meningkat secara manual dari bingkai ke bingkai. Parameter filter Wiener r dan rasio signal-to-noise (SNR) dipilih secara manual sedemikian rupa untuk memastikan kualitas visual terbaik dari restorasi. Untuk mengimbangi efek tepi, penurunan bertahap pada kecerahan gambar di tepi dilakukan.

Gambar A

Hasil pemulihan gambar A. r = 53, SNR = 5200

Gambar B

Hasil restorasi gambar B. r = 66, SNR = 4400

Gambar C

Hasil pemulihan gambar C. r = 102, SNR = 7100
Dapat dilihat bahwa bahkan dengan defocusing yang signifikan, keterbacaan teks praktis
sepenuhnya pulih.
Hasil pemulihan gambar buram plat nomor
Kekaburan gambar terjadi ketika kamera dan subjek bergerak relatif satu sama lain selama eksposur. Pertimbangkan hanya kasus ketika subjek bergerak linear relatif terhadap kamera stasioner. Dalam hal ini, sistem distorsi didekati dengan baik oleh PSF dalam bentuk segmen yang diarahkan sepanjang pergerakan objek. PSF seperti itu didefinisikan oleh dua parameter: Panjang L dan sudut pelumasan THETA.

PSF dengan pelumasan linier
Di bawah ini adalah gambar yang terdistorsi dari dua mobil, diperoleh dengan eksposur yang tidak cukup pendek, yang menyebabkan penampilan kabur yang terlihat.

Gambar dua mobil yang terdistorsi
Di bawah ini adalah hasil mengembalikan jumlah kedua mobil menggunakan filter Wiener. Parameter L, THETA, dan SNR dipilih sedemikian rupa untuk memastikan kualitas visual terbaik dari pemulihan nomor mobil.

Hasil mengembalikan nomor mobil yang cerah. L = 78, THETA = 15, SNR = 300

Hasil pemulihan nomor mobil gelap. L = 125, THETA = 0, SNR = 700
Dapat dilihat bahwa bahkan dengan pelumasan yang signifikan, dimungkinkan untuk mengembalikan keterbacaan angka
mobil.
Algoritma penyaringan diimplementasikan dalam C ++ OpenCV sebagai aplikasi konsol.
Kode sumber dapat ditemukan di tautan di bawah ini.
https://github.com/VladKarpushin/out_of_focus_deblur/tree/full_color_version
https://github.com/VladKarpushin/motion_deblur
https://docs.opencv.org/4.0.0-alpha/de/d3c/tutorial_out_of_focus_deblur_filter.html
https://docs.opencv.org/4.0.0-alpha/d1/dfd/tutorial_motion_deblur_filter.html
Sastra
- RC Gonzalez, RE Woods. Fundamental gambar digital. 1987.
- Saya Gruzman, V.S. Kirichuk, V.P. Kosykh, G.I. Peretyagin, A.A. Spector. Pemrosesan gambar digital dalam sistem informasi. 2000