gpt4 book ai didi

opencv - OpenCV:如何用较小的rect替换较大的rect

转载 作者:行者123 更新时间:2023-12-02 17:40:33 25 4
gpt4 key购买 nike

我正在执行一些操作,需要将较大的矩形替换为较小的矩形。

大多数答案建议使用smallerRectMat.copyTo(biggerRectMat),但它没有给我提供require输出。子垫已更改,但原始图像保持原样。

当我尝试查看子垫时,它们都变成相同的较小矩形。

Mat rectNose = testBuffer.submat(rectA.y,rectA.y+rectA.height,rectA.x,rectC.x+rectC.width);
Rect biggerRect = getHeadContour(testBuffer);
Mat rectHead = testBuffer.submat(biggerRect.y+1,biggerRect.y+biggerRect.height,biggerRect.x+1,biggerRect.x+biggerRect.width);
rectNose.copyTo(rectHead);
Imgcodecs.imwrite("/Users/test.jpg",rectHead);
Imgcodecs.imwrite("/Users/test1.jpg",rectNose);
Imgcodecs.imwrite("/Users/test1.jpg",testBuffer);

基本上我想将 Nose 区域附近的矩形复制到额头带有蓝色边界的矩形。

enter image description here

最佳答案

您可以尝试ROI(图像区域)缩放

smallRect = img[rectA.y:rectA.y+rectA.height, rectA.x:rectC.x+rectC.width]
upscaledRegion = cv2.resize(smallRect , (biggerRect.width, biggerRect.height), interpolation=cv2.INTER_AREA)
img[biggerRect.y:biggerRect.y+biggerRect.height, biggerRect.x:biggerRect.x+biggerRect.width] = upscaledRegion

关于opencv - OpenCV:如何用较小的rect替换较大的rect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45505983/

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