TI/Programowanie dla Fizyków Medycznych:Zadania openCV: Różnice pomiędzy wersjami

Z Brain-wiki
Linia 19: Linia 19:
 
<source lang="python">
 
<source lang="python">
 
import cv2
 
import cv2
 +
import numpy as np
 
img = cv2.imread('obrazek.jpg', cv2.IMREAD_COLOR)  
 
img = cv2.imread('obrazek.jpg', cv2.IMREAD_COLOR)  
 
#Uwaga! Nie RGB, tylko BGR
 
#Uwaga! Nie RGB, tylko BGR
Linia 31: Linia 32:
 
k=cv2.waitKey(0)
 
k=cv2.waitKey(0)
 
print("Wcisnales:", k)
 
print("Wcisnales:", k)
#Sprawdź, co stanie się, jeśli teraz zamkniesz okienko myszką
+
#Sprawdź, co zostanie wypisane, jeśli teraz zamkniesz okienko myszką
  
 
cv2.destroyAllWindows()
 
cv2.destroyAllWindows()
  
 
</source>
 
</source>
 +
 +
Na wszelki wypadek, aby zawsze została wykonana komenda zamykająca okienko, również w przypadku pojawienia się błędu w programie, warto użyć słów try: i finally:
 +
<source lang="python">
 +
import cv2
 +
import numpy as np
 +
try:
 +
    img = cv2.imread('obrazek.jpg',cv2.IMREAD_COLOR)
 +
    cv2.imshow('image',img)
 +
    k=cv2.waitKey(0)
 +
    cv2.imshow('image',img)
 +
    k=cv2.waitKey(0)
 +
finally:
 +
    cv2.destroyAllWindows()

Wersja z 10:25, 30 lis 2017

Instalacja Open CV

Dla potrzeb tego zadania każdy powinien stworzyć własne Virtual Enviorment (wirtualne środowisko).

Otwórz terminal. Wejdź do katalogu __work__ (jest w nim dużo miejsca, którego brakuje w Twoim katalogu domowym).

  • cd __work__

Wpisz komendy:

  • virtualenv -p python3 ve
  • source ve/bin/activate

(po tej komendzie powinno sie pojawic ve na poczatku)

  • pip install --upgrade pip
  • pip install opencv-python

Komendę source ve/bin/activate trzeba będzie wywołać za każdym razem, kiedy będziemy zaczynać pracę w tym wirtualnym środowisku. Wychodzi się z niego komendą:

  • deactivate

A spydera w terminalu uruchamia się komendą

  • spyder3

Podstawowe metody w Open CV

Wczytanie i wyświetlenie obrazka.

import cv2
import numpy as np
img = cv2.imread('obrazek.jpg', cv2.IMREAD_COLOR) 
#Uwaga! Nie RGB, tylko BGR
#jeśli ma być wczytane w skali szarości wpisz cv2.IMREAD_GRAYSCALE
#jeśli ma być wczytane w oryginalnej skali barw, to cv2.IMREAD_UNCHANGED
    
cv2.namedWindow('image', cv2.WINDOW_NORMAL) 
#ta linijka jest potrzebna, jeśli chcemy, by okienko było rozciągliwe

cv2.imshow('image',img)

k=cv2.waitKey(0)
print("Wcisnales:", k)
#Sprawdź, co zostanie wypisane, jeśli teraz zamkniesz okienko myszką

cv2.destroyAllWindows()

Na wszelki wypadek, aby zawsze została wykonana komenda zamykająca okienko, również w przypadku pojawienia się błędu w programie, warto użyć słów try: i finally: <source lang="python"> import cv2 import numpy as np try:

   img = cv2.imread('obrazek.jpg',cv2.IMREAD_COLOR)
   cv2.imshow('image',img)
   k=cv2.waitKey(0)
   cv2.imshow('image',img)
   k=cv2.waitKey(0)

finally:

   cv2.destroyAllWindows()