python - 对两个 RGB 像素值求平方时的值错误(OpenCV + Python)
问题描述
我试图计算两个 rgb 图像之间的 ssd,我发现返回的值包含负值,这很奇怪,因为 ssd 在对它们求和之前对差异进行平方。所以,我剖析了这个问题,结果发现问题在于平方。
这是我的ssd功能:
def ssd(kernel_left, kernel_right):
return np.sum((kernel_left- kernel_right)**2)
以下是我剖析问题的方法:
print(kernel_left[1,1]) # = [61 57 56]
print(kernel_right[1,1]) # = [87 59 29]
print(kernel_left[1,1] - kernel_right[1,1]) # = [-26 -2 27]
print((kernel_left[1,1] - kernel_right[1,1])**2) # = [-92 4 -39]
平方如何产生错误和负值对我来说没有任何意义。
解决方案
推荐阅读
- quickbooks - 继续查询 Quickbooks 数据的最佳方式
- javascript - 用于循环条件迭代和重置变量的 Javascript
- excel - 只有第一个 IF(AND) 语句有效,其余的无效
- javascript - 如何避免 ReactJs 中的 CSS 冲突
- git - 如何从命令行获取主 git 分支名称?
- node.js - 尝试上传文件时出现 413(请求实体太大)
- excel - 使用 Excel VBA 生成偏向一种颜色的随机颜色
- php - 差异月天数超过零
- r - networkD3 中的 forcenetwork 不产生图形和错误
- python - 使用 socks5 代理的 Python 请求