gpt4 book ai didi

c++ - 将图像复制到旋转矩形opencv c++的方法

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:55:22 35 4
gpt4 key购买 nike

我在 Win7 x64 上工作,使用 openCV 和 Visual Studio 2010,使用 C++ 编程。我想将一个图像(称为 image)复制到另一个图像的矩形区域(称为 RR_image)。然而,这个区域是旋转的。

这是图片:

enter image description here

这是RR_image: enter image description here(如你所见,我已经旋转了第一张图片)

我会用红色矩形复制第一张图片。

有多少种方法可以做到这一点?

我知道 ROI 和:img1.copyTo(img2.rowRange(...), img2.colRange(...));

谢谢!

最佳答案

主要问题是 OpenCV 不支持图像的透明度,这是您以简单的方式完成该任务所需要的。

因此,一种方法是编写一个自定义函数/方法来迭代旋转的(源)图像,将像素复制到目标图像,同时忽略背景像素(例如,特定的灰色阴影) .不过,这种方法非常有限。

编辑:

OpenGL 当然可以胜任这项工作,但它带来了您可能不希望亲手了解的复杂性。幸运的是还有其他选择,例如 ImakeMagick , 它通过 ImageMagick++ 提供了一个 C++ API它当然可以处理透明图像。看看A Gentle Introduction to Magick++ .

QImage来自 Qt 的类可以 probably也这样做。

关于c++ - 将图像复制到旋转矩形opencv c++的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14509100/

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