gpt4 book ai didi

opencv - 如何通过使用opencv在图像中查找近似三角形

转载 作者:行者123 更新时间:2023-12-02 17:36:01 25 4
gpt4 key购买 nike

我有这张图片:

我想找到这样的等腰直角三角形:

我该怎么做?谢谢你的帮助。

最佳答案

您可以尝试模糊图像,转换为灰度,然后对图像应用differnet阈值。下一步是找到并排列轮廓,并用有限的尺寸过滤掉轮廓。

import cv2
import numpy as np

img = cv2.imread('triangle.png')
blur = cv2.GaussianBlur(img,(5,5),0)
values = [30, 40, 50, 60, 70, 80, 90]
gray_image = cv2.cvtColor(blur, cv2.COLOR_BGR2GRAY)
for i in values:
ret, threshold = cv2.threshold(gray_image,i,255,cv2.THRESH_BINARY)
im, contours, hierarchy = cv2.findContours(threshold,cv2.RETR_TREE,cv2.CHAIN_APPROX_NONE)
area = sorted(contours, key=cv2.contourArea, reverse=True)
for j in range(1, len(area)):
contour = area[j]
size = cv2.contourArea(contour)
if 10 < float(size) < 140000:
cv2.drawContours(img, [contour], -1, (0,255,0), 2)
cv2.imshow('img', img)

结果:

enter image description here

注意:

转换为不同的色彩空间并应用不同的阈值可以改善结果。

关于opencv - 如何通过使用opencv在图像中查找近似三角形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50833477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com