Python opencv 获取图像形状大小

42 篇文章 5 订阅
20 篇文章 1 订阅

图像矩阵的shape属性表示图像的大小,shape会返回tuple元组,第一个元素表示矩阵行数,也就是图像的高(Y),第二个元组表示矩阵列数,也就是图像的宽(X),第三个元素是3,表示像素值由光的三原色组成。

import cv2
import numpy as np
fn="22.jpg"
if __name__ == '__main__':
    print('load %s as ...' % fn)
    img = cv2.imread(fn)
    sp = img.shape
    print sp
    sz1 = sp[0]#height(rows) of image
    sz2 = sp[1]#width(colums) of image
    sz3 = sp[2]#the pixels value is made up of three primary colors
    print ('width: %d \nheight: %d \nnumber: %d' %(sz1,sz2,sz3))

运行结果:
load 22.jpg as …
(510, 512, 3)
width: 510
height: 512
number: 3

 

欢迎关注公众号:算法工程师的学习日志,获取算法工程师的学习资料。如果有技术咨询,提供有偿咨询,联系qq(1762016542)或者公众号留言

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用PythonOpenCV来进行颜色和形状的识别。下面是一个基本的示例代码,演示了如何使用OpenCV来识别物体的颜色和形状: ```python import cv2 import numpy as np # 定义要识别的颜色的范围 lower_blue = np.array([100, 50, 50]) upper_blue = np.array([130, 255, 255]) # 读取图像 image = cv2.imread('image.jpg') # 将图像从BGR转换为HSV颜色空间 hsv_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV) # 创建一个遮罩,将图像中在颜色范围内的部分标记为白色,其他部分标记为黑色 mask = cv2.inRange(hsv_image, lower_blue, upper_blue) # 执行形态学操作,去除噪点 kernel = np.ones((5, 5), np.uint8) mask = cv2.morphologyEx(mask, cv2.MORPH_OPEN, kernel) # 在原始图像上绘制识别出的物体的轮廓 contours, _ = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) cv2.drawContours(image, contours, -1, (0, 255, 0), 3) # 显示结果图像 cv2.imshow('Color and Shape Detection', image) cv2.waitKey(0) cv2.destroyAllWindows() ``` 在这个示例中,我们首先定义了要识别的颜色范围。然后,我们读取图像,并将其转换为HSV颜色空间。接下来,我们创建一个二值化的遮罩,将图像中在颜色范围内的部分标记为白色,其他部分标记为黑色。之后,我们执行形态学操作来去除噪点,并找到物体的轮廓。最后,我们在原始图像上绘制识别出的物体的轮廓,并显示结果图像。 请注意,这只是一个基本的示例代码,你可以根据实际情况进行调整和改进。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值