您的位置:首页 > 编程语言 > Python开发

【Python_Demo_3】基于Python_OpenCv设置图像的ROI区域

2016-11-16 19:40 435 查看
#coding = utf-8
#======================================================================================================
#文件说明:
#       使用OpenCv——python设置图像的ROI区域
#开发环境:
#       IDLE+PYTHON2.7+UBUNTU14.04+CAFFE
#时间地点:
#       陕西师范大学 11.16
#作    者:
#       九月
#======================================================================================================
import cv2                                     #[1]导入OpenCv开源库
import numpy as np
image_path = "/home/wei/caffe/examples/myself/image/cat.jpg"
srcImg     = cv2.imread(image_path)            #[2]将图片加载到内存
cv2.namedWindow("[srcImg]",cv2.WINDOW_AUTOSIZE)#[3]创建显示窗口
cv2.imshow("[srcImg]",srcImg)                  #[4]在刚才创建的显示窗口中显示刚在加载的图片

#========================================================================================================
#模块说明:
#       由于OpenCv中,imread()函数读进来的图片,其本质上就是一个三维的数组,这个NumPy中的三维数组是一致的,所以设置图片的
#   ROI区域的问题,就转换成数组的切片问题,在Python中,数组就是一个列表序列,所以使用列表的切片就可以完成ROI区域的设置
#========================================================================================================

img_roi_y      = 200                           #[1]设置ROI区域的左上角的起点
img_roi_x      = 200
img_roi_height = 100                           #[2]设置ROI区域的高度
img_roi_width  = 200                           #[3]设置ROI区域的宽度

img_roi        = srcImg[img_roi_y:(img_roi_y+img_roi_height),img_roi_x:(img_roi_x+img_roi_width)]

cv2.namedWindow("[ROI_Img]",cv2.WINDOW_AUTOSIZE)
cv2.imshow("[ROI_Img]",img_roi)
cv2.imwrite("/home/wei/caffe/examples/myself/image/cat_ROI.jpg",img_roi)
cv2.waitKey(0)
cv2.destroyWindow("[srcImg]")                  #[4]注意:这一点和C++编程中,是有区别的,C++中是不需要手动销毁窗口的
cv2.destroyWindow("[ROI_Img]")                 #[5]python中,创建的窗口,需要手动的销毁

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: