pythonopencv提取圆内图像_如何在Python中使用OpenCV提取图像的特定部分?

博主在尝试使用Python的OpenCV库提取图像中特定圆形区域时遇到问题,具体表现为在进行bitwise_and操作时出现错误。经过Canny边缘检测和轮廓查找等步骤,发现当图像为灰度时,代码可以正常运行,但使用RGB或HSV等颜色空间会导致错误。在社区的帮助下,博主最终解决了问题,能够成功提取出前景图像。
摘要由CSDN通过智能技术生成

我试图通过执行Canny边缘检测来提取图像的一部分.我成功地创建了该对象的蒙版.但是当我对原始图像执行bitwise_and操作时,为了提取前景部分,我收到以下错误.

OpenCV Error: Assertion failed ((mtype == CV_8U || mtype == CV_8S) && _mask.sameSize(*psrc1)) in cv::binary_op, file C:\projects\opencv-python\opencv\modules\core\src\arithm.cpp, line 241

Traceback (most recent call last):

File "C:\Users\Boudhayan Dev\Desktop\extraction.py", line 37, in

new_image = cv2.bitwise_and(img_rgb,img_rgb,mask=mask)

cv2.error: C:\projects\opencv-python\opencv\modules\core\src\arithm.cpp:241: error: (-215) (mtype == CV_8U || mtype == CV_8S) && _mask.sameSize(*psrc1) in function cv::binary_op

我的代码如下 –

import cv2

import numpy as np

img_rgb = cv2.imread("3.jpg")

cv2.namedWindow("Original Image",cv2.WINDOW_NORMAL)

img = cv2.cvtColor(img_rgb,cv2.COLOR_RGB2HSV)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值