上面代码并没有输出两个检测框
时间: 2023-07-31 09:08:03 浏览: 32
非常抱歉,我的回答有误。之前的代码只能找到一个最小的包含所有目标的矩形框,并不能找到每个目标的矩形框。为了找到每个目标的矩形框,我们需要使用轮廓检测来获取每个目标的轮廓,并计算每个轮廓的矩形框。
以下是通过轮廓检测找到每个目标的矩形框的代码:
```python
import cv2
# 读入图像和分割结果
img = cv2.imread("image.jpg")
segmented_img = cv2.imread("segmented_image.jpg", 0)
# 轮廓检测
contours, hierarchy = cv2.findContours(segmented_img, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
# 计算并绘制每个目标的矩形框
for i in range(len(contours)):
# 计算轮廓的矩形框
x, y, w, h = cv2.boundingRect(contours[i])
# 绘制矩形框
cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 0), 2)
# 显示结果
cv2.imshow("Image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
其中,`cv2.findContours`函数可以通过输入二值图像,返回图像中所有轮廓的坐标。之后,我们可以使用`cv2.boundingRect`函数计算每个轮廓的矩形框,并使用`cv2.rectangle`函数在原始图像上绘制每个目标的矩形框。
希望这次回答能够解决您的问题,感谢您对我的提醒。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)