python-2.7 - opencv和python如何只显示麦田圈区域

标签 python-2.7 opencv

我只想使用一个指向中心的点来进行圆形裁剪。最简单的方法是什么?感谢我的代码

import numpy as np
import cv2

img = cv2.imread('lenna.png',cv2.IMREAD_COLOR)
cv2.circle(img,(312,237), 63, (0,0,0),2)
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

最佳答案

在这里你可以从这个脚本裁剪圆圈

import cv2
import numpy as np
img = cv2.imread('test2.jpg', cv2.IMREAD_COLOR)
x=256
y=256
r=63
# crop image as a square
img = img[y:y+r*2, x:x+r*2]
# create a mask
mask = np.full((img.shape[0], img.shape[1]), 0, dtype=np.uint8) 
# create circle mask, center, radius, fill color, size of the border
cv2.circle(mask,(r,r), r, (255,255,255),-1)
# get only the inside pixels
fg = cv2.bitwise_or(img, img, mask=mask)

mask = cv2.bitwise_not(mask)
background = np.full(img.shape, 255, dtype=np.uint8)
bk = cv2.bitwise_or(background, background, mask=mask)
final = cv2.bitwise_or(fg, bk)
cv2.imshow('image',final)
cv2.waitKey(0)
cv2.destroyAllWindows()

关于python-2.7 - opencv和python如何只显示麦田圈区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50697179/

相关文章:

python - BeautifulSoup4 无法在我的托管服务器上运行

python - 为什么 id(id) 和 id(id(id)) 总是返回相同的值,而 id(id(id(id))) "loops"超过 3 个值?

macos - '导入 Gtk 模块时出错 : No module named repository' with graph_tool

c++ - 在 OpenCV 中使用 drawContours 连接四个点

c++ - OpenCV 的 findHomography 产生无意义的结果

c++ - OpenCV 在轮廓中获取点

python - 创建的目录具有错误的权限(被锁定)

python - 在字符串中的每个字符前后放置一个符号

CvLoadImage 函数和列表

python - 如何让 cv2.imshow() 显示列表中的帧?