将 opencv C++ 代码转换为 Python opencv 代码

Conversion of opencv C++ code to Python opencv code

本文关键字:opencv 代码 Python 转换 C++      更新时间:2023-10-16
cvAbsDiff(imaggray, imaggray1, imaggray2);
CvScalar sumDiff = cvSum (imaggray2);
ar1[0] =   (long int) sumDiff.val[0] + (long int) sumDiff.val[1] + (long int) sumDiff.val[2];

这是 c++ 代码,其中ar1是一个long int数组。图像imaggrayimaggray1的绝对差异存储在imaggray2中。

在蟒蛇中:

cv.AbsDiff(imaggray, imaggray1, imaggray2)

我在将第二行和第三行转换为 python 时遇到问题。

我应该怎么做?

正如 Abid 评论的那样,我会使用 cv2 而不是 cv 模块。由于 cv2 基于 c++ 接口,因此假设您可以执行 OOP,则可以使用更少的代码行开发脚本。使用 cv2 的另一个优点是 python 语句主要类似于其 c++ 语句

drawing2 = cv2.absdiff(drawing,drawing0)
sc = cv2.sumElems(drawing2)
ar = sc[0] + sc[1] + sc[2]

更多细节在这里