gpt4 book ai didi

OpenCV 图像比较

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

编辑.. 早些时候在我的后院外用不同的图像进行测试时,我在背景中得到了一些噪音,我怎样才能消除这种噪音,所以我只拿起我的狗?

enter image description here
enter image description here

 #Import Images
Background_Image = cv2.imread('bck.jpg',0)
Forground_Image = cv2.imread('dog.jpg',0)

#
diff = cv2.absdiff(Background_Image,Forground_Image)

thresh = cv2.threshold(diff, 80, 255, cv2.THRESH_BINARY)[1]
thresh = cv2.dilate(thresh, None, iterations=2)
(_, cnts, _) = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for c in cnts:
(x, y, w, h) = cv2.boundingRect(c)
cv2.rectangle(Forground_Image, (x, y), (x + w, y + h), (0, 255, 0), 4)

cv2.imshow('Test',Background_Image)
cv2.imshow('Test1',Forground_Image)
cv2.waitKey()

最佳答案

OpenCV 已经有一些背景减法实现,我认为使用它们会比使用一些手动解决方案更好。
教程:http://docs.opencv.org/trunk/db/d5c/tutorial_py_bg_subtraction.html

生成差异图像,然后:

  • 查看非黑色像素的计数是否高于阈值
  • 或在差异图像中找到最大的连续 Blob 并检查其区域是否高于阈值(因为您正在处理有损图像、相机噪声和可能改变的照明条件,我怀疑这会更好,但更简单的计数可能会更好在某些情况下足够了)
  • 关于OpenCV 图像比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45548325/

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