十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
源码:
为青川等地区用户提供了全套网页设计制作服务,及青川网站建设行业解决方案。主营业务为成都网站设计、网站建设、青川网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
#!/usr/bin/env python
#coding=utf-8
__author__ = 'zhangdebin'
import cv2
if __name__ == '__main__':
#image read
image = cv2.imread("/Users/zhangdebin/Documents/checkFace2.jpg")
image0 = cv2.imread("/Users/zhangdebin/Documents/checkFace2.jpg",0)
image1 = cv2.imread("/Users/zhangdebin/Documents/checkFace2.jpg",1)
print image
cv2.namedWindow("the window")
cv2.imshow("the window", image)
cv2.namedWindow("the window0")
cv2.imshow("the window0", image0)
cv2.namedWindow("the window1")
cv2.imshow("the window1", image1)
cv2.waitKey(0)
其中,cv2是我在mac系统中安装的python-opencv包,具体安装方法在另一篇博文有介绍,
cv2.imread和matlab中的imread函数很像,其中源码有一个参数imread(…)
imread(filename[, flags]) - retval,falgs经测试,当缺省时为原图像,当falgs=0时,因为只读取第一个字节,彩色图像读取为灰度图像,当falgs逐渐增加,向7(0~7,8位)靠拢时,字节数增加,图像色彩越来越靠近原图像,当超过8位,比如8,变为(8-8=0),又是只取一个字节,视觉效果为灰度图,同理,15位为原图,有兴趣的朋友可以自己测试下,具体效果见下图:
同时,cv2中自带了falgs =cv2.CV_LOAD_IMAGE_GRAYSCALE或
cv2.CV_LOAD_IMAGE_COLOR,其实这两个参数和上面是一样的,0为grayimage,但是color=1,而且显示时候也不是彩色的,这和matlab的imread有很大区别
grayimage = cv2.imread('/Users/zhangdebin/Documents/checkoutFace2.jpeg',cv2.CV_LOAD_IMAGE_GRAYSCALE);
colorimage = cv2.imread('/Users/zhangdebin/Documents/checkoutFace2.jpeg', cv2.CV_LOAD_IMAGE_COLOR)
print 'cv2.grayscale:'
print cv2.CV_LOAD_IMAGE_GRAYSCALE
print 'colr:'
print cv2.CV_LOAD_IMAGE_COLOR
cv2.grayscale:
colr:
1
opencv-python中的cv2.namedWindow(),其作用如下:
使用cv2.imshow()的时候,如果图片太大,会显示不全并且无法调整。
因此在cv2.imshow()的前面加上这样的一个语句:cv2.namedWindow('image', 0),得到的图像框就可以自行调整大小,可以拉伸进行自由调整。
扩展资料:
用法:cv2.namedWindow('窗口标题',默认参数)
默认参数:
cv2.WINDOW_AUTOSIZE+cv2.WINDOW_KEEPRATIO+cv2.WINDOW_GUI_EXPANDED)
参数:
(1)cv2.WINDOW_NORMAL:窗口大小可改变。
(2)cv2.WINDOW_AUTOSIZE:窗口大小不可改变。
(3)cv2.WINDOW_FREERATIO:自适应比例。
(4)cv2.WINDOW_KEEPRATIO:保持比例。
一.查找轮廓
cv2.findContours()
[image,] contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
轮廓检索方式:
轮廓近似方法:
二.绘制轮廓
cv2.drawContours()
cv2.drawContours(img, contours, -1, (0, 0, 255), 2)