Kayıt Ol

Giriş


Şifremi Kaybettim

Şifreni mi unuttun? Lütfen e-mail adresinizi giriniz. Bir bağlantı alacaksınız ve e-posta yoluyla yeni bir şifre oluşturacaksınız.

Giriş


Kayıt Ol

Merhaba, kayıt formu üzerinden kayıt olabilirsiniz. Fakat sosyal medya ile kayıt olmanızı önermekteyiz.

Python ile OpenCV Günlükleri -2 / Resim Okuma, Kaydetme (RGB,GrayScale)

Python ile OpenCV Günlükleri -2 / Resim Okuma, Kaydetme (RGB,GrayScale)

 

İyi günler Python Türkiye ailesi.
Bir önceki yazımızda Opencv hakkında bilgi verip, gnu/linux’a Opencv kurulumu hakkında döküman paylaşmıştık.

Python ile OpenCV Günlükleri

Şimdi opencv 3.0.0 kurulu cihazımızda python ile Opencv uygulamalarına giriş yapacağız

(Opencv’yi kuruktan sonra Opencv bileşenlerinden cv2 modülünü uygulamamıza import etmemiz gerekmektedir.)

Şimdilik ilk uygulamamız kafa karışıklığı oluşturmaması amacıyla bir resmi okuyup, pencere de görüntülemek ve kaydetmek olacak.

Öncelikle kullanacağımız fonksiyonlara göz atalım

İmage Okuma

imread() fonksiyonu, image nesnesi yani resmi okumak için kullandığımız fonksiyondur.

  • Test amaçlı kullandığımız resim ya  çalıştığımız dizinde olmalı ya da full pathı uygulamamızda belirtmeliyiz
  • imread() fonksiyonu 2 parametre alır. İlk parametremiz test amaçlı kullanacağımız resmin yolu ve adı , 2. parametremiz ise görüntüleme modumuz

örnek: 1* cv2.imread(‘testresim.jpg’, 0) > testresim dosyasını 0 yani grayscale modda açacaktır
cv2.imread(‘testresim.jpg’, cv2.IMREAD_GRAYSCALE) > yukarıdaki örnekle (1*) aynı sonucu verecektir.

Örnek 2* cv2.imread(‘testresim.jpg’, 1) > dosya renkli görüntülenecek
cv2.imread(‘testresim.jpg’, cv2.IMREAD_COLOR) > aynı çıktıyı verecektir (2*)

Resmi Görüntüleme

imshow() fonksiyonu ile resmin görüntüleme işlemini gerçekleştiriyoruz .

  • Bu fonksiyon 2 parametre alır . ilk parametre resmin görüntülendiği pencerenin adı, 2. parametre ise test resmimizin full path’i. Şimdi açıklamalarımız pekiştirmek için örnek uygulama geliştirelim

Senaryo: Kullanıcı çalıştığı dizinde yer alan , renkli test resim dosyasını açıp, display edecektir. Kullanıcı klavyeden ESC tuşuna bastığında pencere kapanıp, uygulama sonlanacak;   klavyeden s harfine bastığında ise  dosyayı yeni isimle grayscale modda aynı dizine kaydedilip uygulama sonlanacaktır.

Başlayalım

Kodlarımızı açıklarsak,

  • import cv2                                   >>Modülümüzü import ettik
  • res=cv2.imread(“del.jpg”, 0)
  • cv2.imshow(“resim”, res)          >> resmi okuyup display ettik
  • k=cv2.waitKey(0)                     >> bu fonksyion klavyeden aktivite bekleyen fonksiyondur . Eğer waitkey(time) belirtilen (milisaniye)de klavyede tuşa basılırsa  uygulama devam edecektir. Eğer süre geçerse, klavyede bir tuşa basıldığında program sonlanacaktır.Aynı zamanda klavyede hangi tuşa basıldığını tespit amaçlı da kullanılır. 64 bit cihazlarda klavye (key stroke ) işlemleri için &0xFF parametresini eklemeniz gerekecektir.
  • if k==27:
  •     cv2.destroyAllWindows()  > klavyeden ESC’ye (Ascii değeri 27 )basıldıysa  oluşturduğumuz tüm pencereleri  sonlandırıyoruz 
  • elif k==ord(‘s’): >> eğer s harfine basılmış ise ; 
  • cv2.imwrite(“del_gray.jpg”, res) >> resmi dosyasını çalıştığımız dizine yazıyoruz. 
  • cv2.destroyAllWindows() >> çalıştığımız tüm pencereleri sonlandırdık
  • print(“yeni dosya kaydedildi”)

Okunan Dosya:

Kaydettiğimiz dosya :

 

kaynak kodlar : https://github.com/farcompen/Python-Opencv-image-read-write/blob/master/opencv.py

Bol Pythonlu Günler


Hakkında Faruk GÜNGÖRKalfa


Beni Takip Et

Cevap yazın

Captcha Captcha güncellemek için resime tıkla