python opencv sub_pix_contour
时间: 2024-09-05 20:02:33 浏览: 36
`cv2.findContours` 是 OpenCV 库中的一个函数,用于检测二值图像中的轮廓。这些轮廓可以用来识别物体的边界,进行图像分析和处理。
在使用 `cv2.findContours` 函数时,有几个参数需要注意:
- `image`:这是输入图像,应该是二值图像(即图像中的像素点只有两种颜色,通常是黑白)。
- `mode`:这是一个枚举类型,用于确定如何检索轮廓。例如,`cv2.RETR_EXTERNAL` 只会检索最外层的轮廓。
- `method`:这是一个枚举类型,指定轮廓的检索方法。例如,`cv2.CHAIN_APPROX_SIMPLE` 会压缩水平或垂直段,仅保留端点。
- `offset`:可选参数,用于在轮廓上应用的偏移。
在得到轮廓之后,可以利用 `cv2.minAreaRect` 和 `cv2.boxPoints` 来获取最小面积的旋转矩形,并计算出对应的精确轮廓点。`cv2.minAreaRect` 返回一个包含中心点、宽度、高度和角度的矩形框,而 `cv2.boxPoints` 根据这个矩形框来计算出四个顶点的坐标。
不过,要注意的是 `cv2.findContours` 会影响原图。在 OpenCV 3.4.2.16 版本之后,如果你在查找轮廓之前需要保留原图,应该使用 `cv2.RETR_EXTERNAL` 和 `cv2.CHAIN_APPROX_SIMPLE` 参数。
相关问题
python opencv 中文_Python OpenCV实现图片上输出中文
在 Python OpenCV 中输出中文需要先安装中文字体库,然后使用 Pillow 库把中文字体转换为 OpenCV 可以识别的格式,最后使用 OpenCV 在图片上绘制中文。
以下是一个简单的示例代码:
```python
import cv2
from PIL import Image, ImageDraw, ImageFont
# 读取图片
img = cv2.imread("image.jpg")
# 转换为 PIL Image 格式
pil_img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
# 获取字体
font_path = "fonts/simhei.ttf"
font = ImageFont.truetype(font_path, 36)
# 在 PIL Image 上绘制中文
draw = ImageDraw.Draw(pil_img)
draw.text((100, 100), "你好,世界!", font=font, fill=(255, 0, 0))
# 转换回 OpenCV 格式
cv2_img = cv2.cvtColor(np.array(pil_img), cv2.COLOR_RGB2BGR)
# 显示图片
cv2.imshow("image", cv2_img)
cv2.waitKey(0)
```
其中,`font_path` 是字体文件的路径,可以根据自己需要修改,`font_size` 是字体大小,`draw.text()` 中的 `(100, 100)` 表示文字的位置,可以根据自己需要修改。最后,使用 `cv2.imshow()` 显示图片。
需要注意的是,如果要在 Windows 环境下输出中文,需要将字体文件复制到 `C:\Windows\Fonts` 目录下。
python 安装opencv_contrib
要安装opencv_contrib库,可以使用以下命令:
pip install opencv-contrib-python
这个命令会自动从PYPI(Python Package Index)上下载并安装opencv_contrib库。
另外,你还可以参考一篇关于Python 3.x安装opencv opencv_contrib的操作方法的文章,里面有详细的步骤和说明,对你有所帮助。
如果你在使用Anaconda环境下,并且已经安装了Python 3.5,但是官网提供的opencv包只支持2.7版本,你可以查找一些资料来解决这个问题,以便让opencv能够在3.5版本上运行。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [opencv-contrib-python安装](https://blog.csdn.net/a19990412/article/details/80933680)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [Python 3.x 安装opencv+opencv_contrib的操作方法](https://download.csdn.net/download/weixin_38656676/12869791)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [Python 3.x 安装opencv+opencv_contrib](https://blog.csdn.net/u010445006/article/details/53782544)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]