python - OpenCV 错误:参数“M”的预期 cv::UMat
问题描述
我是 Python 新手,因此在调试脚本时遇到了麻烦。我正在尝试使用脚本创建一个“平均脸opencv
”,以用我自己的图像重新创建。这是我正在使用的 Github 存储库,但同样适用于这个和这个。
地标检测部分有效,但average.py
脚本抛出我不明白如何解决的错误。
我通过将xrange()
函数替换为range()
. 比estimateRigidTransform()
似乎被贬低了,我把它换成了estimateAffinePartial2D()
这么好。
现在控制台向我抛出以下错误:
TypeError: Expected cv::UMat for argument 'M'
这是脚本的代码片段:
# Apply affine transform calculated using src_tri and dst_tri to src and
# output an image of size.
def apply_affine_transform(src, src_tri, dst_tri, size):
# Given a pair of triangles, find the affine transform.
warp_mat = cv2.getAffineTransform(np.float32(src_tri), np.float32(dst_tri))
# Apply the Affine Transform just found to the src image
dst = cv2.warpAffine(src, warp_mat, (size[0], size[1]), None,
flags=cv2.INTER_LINEAR, borderMode=cv2.BORDER_REFLECT_101)
return dst
有关更多可重现的代码,请参阅此问题介绍中的 repos。
非常感谢所有帮助!
解决方案
推荐阅读
- ruby-on-rails - 在 Heroku 控制台中访问本地文件以进行一次种子导入
- python - 求平方和
- android - 如何解决这些错误?(主键值已经存在:10。)和(kotlin.KotlinNullPointerException)
- python - 网页抓取时出现AttributeError
- rest - 用于图像文件名的 SHA-1,仍然安全吗?
- python - Python import class from module 说找不到模块错误
- python - AttributeError:模块“matplotlib.pyplot”没有属性“pyplot”
- javascript - 如何在Javascript中按值对数组中的嵌套字典进行排序
- maven - 将 Maven 项目迁移到 Gradle 的问题
- python - Python,如何对多元时间序列进行聚类?