opencv 的默认使用highgui显示图片,
用命令行运行,能够正常显示html
cv.namedWindow("Image")
cv.imshow("Image",img)复制代码
用jupyter则有无反应python
import sys
import cv2
print("python版本:%s"% sys.version)
print("opencv版本:%s"% cv2.__version__)复制代码
输出web
python版本:3.5.3 |Continuum Analytics, Inc.| (default, May 15 2017, 10:43:23) [MSC v.1900 64 bit (AMD64)]
opencv版本:3.2.0复制代码
若是使用Anaconda,则打开 Anaconda Prompt
,activate python35
切换到相应的python环境bash
pip install --upgrade setuptools
pip install numpy Matplotlib
pip install opencv-python复制代码
参考 Python环境搭建之OpenCV,可是在jupyter中,运行该博文下一段demo代码,无反应网络
通过一番google,已解决,现整理以下post
以lenna 图为例ui
import cv2
from matplotlib import pyplot as plt
img = cv2.imread('lenna1.png')
show_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
plt.imshow(show_img)
plt.show()复制代码
参考自 Quickie: Mix up OpenCV and Jupyter (iPython Notebook) 和官方 Using Matplotlibgoogle
%matplotlib inline
import numpy as np
import cv2
from matplotlib import pyplot as plt
import urllib.request as ul
data = None
try:
data = ul.urlopen('http://www.mupin.it/wp-content/uploads/2012/06/lenna1.png').read()
except Exception as e:
print("Could not download the image: %s " %( e.message))
else:
data = np.fromstring(data, np.uint8)
img_data = cv2.imdecode(data, cv2.IMREAD_COLOR )
img_data = cv2.cvtColor(img_data, cv2.COLOR_BGR2RGB)
plt.imshow(img_data)
plt.show()复制代码
本示例用的环境是python:3.5.3 和 opencv:3.2.0,在opencv3.x中已经不存在cv2.CV_LOAD_IMAGE_COLOR
,根据 Python OpenCV load image from byte string ,改为cv2.IMREAD_COLOR
url
大部分代码 参考自 Quickie: Grab an image from the web with urllib2 and OpenCVspa
博客 anjia.ml/2017/07/16/…
掘金 juejin.im/post/596b3e…
简书 www.jianshu.com/p/69af8b1dc…