如何使用OpenCV裁剪图像,就像我以前在PIL中所做的那样.

关于PIL的工作示例

im = Image.open('0.png').convert('L')
im = im.crop((1, 1, 98, 33))
im.save('_0.png')

但我如何在OpenCV上做到这一点呢?

这就是我try 的:

im = cv.imread('0.png', cv.CV_LOAD_IMAGE_GRAYSCALE)
(thresh, im_bw) = cv.threshold(im, 128, 255, cv.THRESH_OTSU)
im = cv.getRectSubPix(im_bw, (98, 33), (1, 1))
cv.imshow('Img', im)
cv.waitKey(0)

但它不起作用.

我想我用错了getRectSubPix.如果是这样的话,请解释一下我怎样才能正确使用这个功能.

推荐答案

这很简单.使用numpy切片.

import cv2
img = cv2.imread("lenna.png")
crop_img = img[y:y+h, x:x+w]
cv2.imshow("cropped", crop_img)
cv2.waitKey(0)

Python相关问答推荐

使用Keras的线性回归参数估计

如何让Flask 中的请求标签发挥作用

PMMLPipeline._ fit()需要2到3个位置参数,但给出了4个位置参数

当从Docker的--env-file参数读取Python中的环境变量时,每个\n都会添加一个\'.如何没有额外的?

OR—Tools CP SAT条件约束

将9个3x3矩阵按特定顺序排列成9x9矩阵

如何从pandas的rame类继承并使用filepath实例化

创建可序列化数据模型的最佳方法

提取相关行的最快方法—pandas

如何合并两个列表,并获得每个索引值最高的列表名称?

python中csv. Dictreader. fieldname的类型是什么?'

干燥化与列姆化的比较

如何从pandas DataFrame中获取. groupby()和. agg()之后的子列?

统计numpy. ndarray中的项目列表出现次数的最快方法

如何在验证文本列表时使正则表达式无序?

如果不使用. to_list()[0],我如何从一个pandas DataFrame中获取一个值?

上传文件并使用Panda打开时的Flask 问题

Django更新视图未更新

极点:在固定点扩展窗口

为什么在生成时间序列时,元组索引会超出范围?