OpenCV를 사용하여 Jupyter Notebook에서 이미지를 표시하고 싶습니다 (mac)

파이썬 초보자를위한 이미지 분석



실패한 내용, 개선된 내용 등을 초보자의 관점에서 기록합니다.

이번에는 Anaconda에서 시작한 Jupyter Notebook에서
OpenCV를 사용하여 이미지를 표시 할 때 오류가 발생한 내용. (아래 그림은 성공 예)


또, 화질이 표시되었을 때, 해상도가 떨어졌으므로, 개선 방법을 모색하고 있습니다.
(누군가 아는 분이 계시면, 교수해 주세요..)

조건



· macOS 사용
· Anaconda의 Jupyter Notebook에서 표시하고 싶습니다.
· Python 3.7 사용
· OpenCV 4.1.1 사용
· matplotlib 사용
· 이미지 (shimarisu.jpg)는 mac의 Desktop의 폴더에 저장됩니다.
 /Desktop/detect_ai/data/shimarisu.jpg

OpenCV 설치



Anaconda에 OpenCV 만 설치되지 않았기 때문에
h tps : // 리 ght 여기. 이. jp / b ぉ g / anfu r 마치 온 - ch ぉ gy / ぺん cv 쥬 py r 의 테보오 쿠 푸세 레코 g 치온
를 참고로 해 보았습니다만, 왠지 나는 할 수 없었습니다.
OpenCV를 선택하고 설치를 시작하는 Apply 버튼을 누를 수 있습니다.
설치 완료 후 Apply 버튼을 누를 수 없습니다.

그래서 터미널에 $ pip install opencv-python 를 입력하여 실행.

노란색 문자로 WARNING으로 표시되지만,
"Successfully installed opencv-python-4.1.1.26"이므로
설치가 성공한 것 같습니다.

OpenCV를 사용하여 이미지 표시



Jupyter Notebook에서 이미지를 표시합니다.
이번에는 다람쥐의 이미지.

소스 코드



이쪽을 참고로 했습니다.
htps : // 하고 싶다 l. 코 m / 쿠에 s 치온 s / 169009

opencv.ipynb
import matplotlib.pyplot as plt
import numpy as np
import cv2

# インライン表示
%matplotlib inline

#画像(shimarisu.jpg)の読み込み
img = cv2.imread("shimarisu.jpg")

#画像の表示
plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) # OpenCV は色がGBR順なのでRGB順に並べ替える
plt.show()

그러나 다음과 같은 오류가 표시되었습니다.

opencv.ipynb
error                                     Traceback (most recent call last)
<ipython-input-33-7c8a2c33eec7> in <module>
     10 
     11 #画像の表示
---> 12 plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) # OpenCV は色がGBR順なのでRGB順に並べ替える
     13 plt.show()

error: OpenCV(4.1.1) /Users/travis/build/skvark/opencv-python/opencv/modules/imgproc/src/color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cvtColor'

◆원인을 조사하면, 지금 일어나고 있는 python 파일의 두는 장소(Anaconda상)와,
표시시키고 싶은 화상(shimarisu.jpg)의 두는 장소(Desktop상)가 다르다는 것.
htps : // 그럼. s c ゔ ぇ rf ぉ w. 코 m/쿠에 s치온 s/49260/py 3-6-6%에 3% 81% 아 B%에 3% 81% 아 6cv2%에 3% 82% 오 9% 에 3% 83% BC% 에 3% 81% 8C% 에 7% 99% 예 % 7% 94% 9F% 에 3% 81% 97% 에 3% 81% 99

표시하고 싶은 이미지 (shimarisu.jpg)는 mac Desktop의 폴더에 저장되었습니다.
/Desktop/detect_ai/data/shimarisu.jpg

시도한 것



첫 번째 이미지의 다섯 번째 줄, 이미지 (shimarisu.jpg)의로드 부분에서

img = cv2.imread("shimarisu.jpg")
img = cv2.imread("/Users/name/Desktop/detect_ai/data/shimarisu.jpg")

로 바꾸면 이미지를 표시할 수 있었습니다!

주의해야 할 포인트



일어나고있는 파이썬 파일의 위치와 이미지의 저장 위치의 계층을 정렬해야합니다.
「mac의 Desktop상의 폴더에, 이미지(shimarisu.jpg)를 격납하고 있어」의 기재가 필요.
이번 경우에는
/Users/(터미널에 표시되는 이름)/Desktop/detect_ai/data/shimarisu.jpg

(터미널에 표시되는 이름)는 사람에 따라 다르다.
이하의 화상은, 예로서 「name」이라고 기재하고 있을 뿐이므로, 수시로 변경해 주세요.



문제점



다만, 화질의 해상도가 떨어지고 표시되어 버리므로, 원래 화상의 해상도를 유지한 채,
이미지를 표시할 수 없는지는 현재 검증 중입니다. (진전이 있으면 갱신합니다)

기타 참고 사이트



· OpenCV로 이미지를 표시하기위한 소스 코드
ㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜ 하테나 bぉg. 코m/엔트리/2015/12/23/214840
htp : // 등 sp. 는 bぉ. jp/엔트리/2016/01/22/201534

좋은 웹페이지 즐겨찾기