cv2를 시도했다.


import cv2
import matplotlib.pyplot as plt
img = cv2.imread("nanamin1", 1)
# 画像の読み込み

img_r = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
# cv2だと色の構成要素がBGRの順番だがpltはRGBの順番なので、pltで表示させるためにはcv2.COLOR_BGR2RGBを使う。

HAAR_FILE="/anaconda3/lib/python3.7/site-packages/cv2/data/haarcascade_frontalface_default.xml"
# 画像データを読み込む。このデータはopen_cvをダウンロードすると付いてくる。

cascade=cv2.CascadeClassifier(HAAR_FILE)
# 大量の画像を学習させることによって、分類器を作る。これによって、顔を検知することが可能となる。

face=cascade.detectMultiScale(img_r)

for x,y,w,h in face:
    cv2.rectangle(img_r,(x, y),(x+w,y+h),(255,255,255),3)
# 顔を囲む長方形を描画する。引数は、(画像、左下座標、右上座標、色、太さ)の順番

plt.imshow(img_r)



잘됐다.

어쨌든 open_cv의 기본값 인 cv2.imshow 함수를 사용해도 이미지를 표시 할 수 없습니다.
조사한 결과, 이 문제는 꽤 많은 사람이 지적하고 wait_key를 사용하여 해결한 사람 등도 있는 것 같지만, 나는 해결할 수 없었기 때문에 matplotlib를 사용했다.

좋은 웹페이지 즐겨찾기