小编C.R*_*ord的帖子

OpenCV确定相交/重叠区域

我正在使用OpenCV和python创建一个拼接程序,目前正在很好地拼接图像,现在正尝试将它们融合在一起。最终目标将是使用图形切割来更好地缝合它们,但现在我只是根据发现的单应性重叠图像。

这是拼接两个图像时当前结果的照片。 在此处输入图片说明

我的目标是确定重叠区域,并将其放入可应用于右上图像的蒙版(就图层而言,这是最上面的一个),这样我就可以使用任何一个搅拌器根据距离来混合它opencv使用或其他算法。

这是我正在寻找的视觉效果。 在此处输入图片说明

任何帮助表示赞赏。

python opencv blending

6
推荐指数
1
解决办法
5908
查看次数

使用Numpy数组的Opencv Python裁剪图像

我正在使用OpenCV 3.1.0-dev和python 2.7.

我试图裁剪出我缝制的图像的黑色外观.困难在于图像中有其他像素是黑色的,所以cv2.findcontours返回一个非常有趣的numpy数组.

在此输入图像描述

第一张图片是我的,第二张图片是目标.

我想知道是否有人知道如何将多边形裁剪到包含整个图像的最小正方形中.蓝线和点是cv2.findContours找到的轮廓.是否可以在numpy数组中找到左上角最多的点,在numpy数组中找到最右下角的p0int,我可以裁剪到?如果是这样,我该怎么做.

这是我目前的代码.我试图找到与作物有关的点cnt=contours[0]

import cv2
import numpy as np

img = cv2.imread("/Users/chrisradford/Documents/Research/ImagesToPass/masterToCrop.jpg",1)
grayed = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
(_,thresh) = cv2.threshold(grayed,1,255,cv2.THRESH_BINARY)
result, contours, _= cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
cnt = contours[0]
# (x,y) = top left coordinate & w,h = idth and height 
x,y,w,h = cv2.boundingRect(cnt) #good
cropped = img[y:y+h,x:x+w] #good
cv2.drawContours(img,contours,-1,(255,0,0),3)
cv2.imshow("result",img)
cv2.imwrite('/Users/chrisradford/Documents/Research/ImagesToPass/StackOverflow.jpg',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)

任何帮助都会得到赞赏

python arrays opencv numpy crop

4
推荐指数
1
解决办法
6658
查看次数

OpenCV 拆分和合并

我有一个类型的图像Mat,我试图将其分成单独的波段,以便我可以分别调整每个波段中的像素值。当我编写代码时,会弹出这个错误“没有匹配的函数来调用‘cvSplit’”。

Mat image = imread(file,1);
Mat rBand, gBand,bBand;
cvSplit(image, bBand, gBand, rBand, NULL);
imshow("red", rBand);
imshow("blue", bBand);
imshow("green",gBand);
Run Code Online (Sandbox Code Playgroud)

c++ opencv image-processing

3
推荐指数
1
解决办法
8205
查看次数

增强或增加图像的饱和度

用 Python 编码。我有以下图像,我将其归类为制作,因此只有被发现具有其原始颜色的图像。有没有办法可以增强像素颜色(使绿色...更绿)?在此处输入图片说明

目标是这样的: 在此处输入图片说明

img = cv2.imread("/Volumes/EXTERNAL/ClassifierImageSets/Origional_2.png",1)
mask = cv2.imread("/Users/chrisradford/Documents/School/Masters/RA/Classifier/Python/mask.png",0)

result = cv2.bitwise_and(img,img,mask=mask)
Run Code Online (Sandbox Code Playgroud)

python opencv colors

3
推荐指数
1
解决办法
8438
查看次数

标签 统计

opencv ×4

python ×3

arrays ×1

blending ×1

c++ ×1

colors ×1

crop ×1

image-processing ×1

numpy ×1