Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用opencv和python进行图像减法_Python_Opencv_Image Processing - Fatal编程技术网

使用opencv和python进行图像减法

使用opencv和python进行图像减法,python,opencv,image-processing,Python,Opencv,Image Processing,我想从另一个图像中减去一个图像 这就是我到目前为止所做的 import cv2 import numpy as np img1 = cv2.imread('template.jpg',0) img2 = cv2.imread('shot_one.jpg',0) img3 = img1-img2 cv2.imshow('result',img3) cv2.waitKey() cv2.destroyAllWindows() 我说的是错误的: Traceback (most recent ca

我想从另一个图像中减去一个图像

这就是我到目前为止所做的

import cv2
import numpy as np

img1 = cv2.imread('template.jpg',0)
img2 = cv2.imread('shot_one.jpg',0)

img3 = img1-img2

cv2.imshow('result',img3)
cv2.waitKey()
cv2.destroyAllWindows()
我说的是错误的:

Traceback (most recent call last):
  File "E:/Python Programme/ATSS/subtra.py", line 7, in <module>
    img3 = img1-img2
TypeError: unsupported operand type(s) for -: 'NoneType' and 'int'
回溯(最近一次呼叫最后一次):
文件“E:/Python program/ATSS/subtra.py”,第7行,在
img3=img1-img2
TypeError:-:“NoneType”和“int”的操作数类型不受支持

我跟着。有什么建议吗?

错误行
对于-:'NoneType'和'int'
不支持的操作数类型明确指出,您的一个映像路径无效,Opencv不会抛出错误,当路径无效时,它会返回一个
None
对象

import cv2
import numpy as np

img1 = cv2.imread('template.jpg',0)
img2 = cv2.imread('shot_one.jpg',0)

if img1 and img2:
    img3 = img1-img2

    cv2.imshow('result',img3)
    cv2.waitKey()
    cv2.destroyAllWindows()
else:
    print "Sorry the images weren't loaded properly."

您确定
img1
img2
的尺寸相同吗?如果没有,则矩阵减法未定义,将引发错误。

您确定img1和img2加载成功吗?根据,当imread失败时,OpenCV将返回
None
。@sturkmen是的,img1和img2加载成功。问题中定义的错误与图像大小无关。仔细阅读错误。