OpenCV Javada Resim Görüntüleme imshow Metodu

Eksik/Güncel Olmayan Bilgi Raporla

OpenCV içerisinde yer alan imshow() metodu parametre olarak verdiğiniz bir mat nesnesini resim tipine dönüştürerek bir pencere içerisinde ekranda gösterir. Bu metot, C++ ve Python dilleri tarafından desteklenmektedir. Yeni başlayanlar örneklerde sıklıkla gördüğü bu metodu Java da denediğinde metodun olmadığını görmüştür. Sıklıkla bu imshow() yerine hangi metot var sorusu gelmektedir, bu yüzden mat tipinin nasıl image tipine dönüştürüleceğini ve frame içerisinde gösterilebileceğini anlatacağım. Tabi bunları swing kütüphanesi yardımıyla gerçekleştiriyor olacağız.

Mat tipi bildiğiniz üzere görüntünün renk değerlerinin, renk uzayı ile birlikte sayısal olarak ifade edilip matris  olarak tutulduğu nesnelerdir. Öncelikli olarak bu değerleri okuyup image nesnesine daha sonrada bu image nesnesini frame nesnesi içerisinde görüntüleyeceğiz.

 

Öncelikle mat nesnesini buffered image nesnesine çevirelim.

Daha sonra frame içerisinde görüntüleyelim. Eğer gerçek zamanlı bir iş yapacaksanız ve sürekli olarak ekrana yakalanan görüntüyü basacaksanız bu metodu her çağırdığınızda yeni bir frame içerisinde açacaktır bu durumda uygulamanın kilitlenmesi ile sonuçlanacaktır. Bu sorunu aşmak için aşağıdaki yöntemi uygulayacağız ve bir kurucu metot yazarak gerekli nesnelerin tek bir defa oluşturulmasını sağlayacağız.

Örnek kullanım;

 

Yorumlar

yorumlar





Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir