python编程实现图片内多个物体尺寸测量
要实现图片内多个物体尺寸测量,你可以使用计算机视觉库,如 OpenCV 来实现。
首先,你需要读取图片,然后对图像进行预处理,以便更容易地检测到图像中的物体。例如,你可以使用边缘检测算法来提取边缘,或者使用图像分割算法来分割图像中的物体。
然后,你可以使用模板匹配或者特征点匹配来查找图像中的特征点,并使用这些特征点来计算图像中的物体的尺寸。
最后,你可以使用 OpenCV 的绘图功能来在图像上绘制测量结果,并将结果保存到新的图像文件中。
效果图:
代码:
import cv2# 读取图片
image = cv2.imread('image.jpg')# 对图像进行预处理
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
blurred = cv2.GaussianBlur(gray, (5, 5), 0)
thresholded = cv2.threshold(blurred, 60, 255, cv2.THRESH_BINARY)[1]# 查找图像中的轮廓
contours, _ = cv2.findContours(thresholded, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)# 对每个轮廓进行处理
for c in contours:# 计算轮廓的边界框
该程序首先读取图片,然后对图像进行预处理,以便更容易地检测到图像中的物体。然后,它使用 OpenCV 的轮廓检测功能来查找图像中的轮廓,并遍历每个轮廓。对于每个轮廓,程序计算轮廓的边界框,然后在图像上绘制边界框。接着,它计算物体的尺寸,并使用 OpenCV 的文本添加功能在图像上添加文本,显示物体的尺寸。最后,程序使用 OpenCV 的图像显示功能显示处理后的图像,并使用 OpenCV 的图像保存功能将处理后的图像保存到新的文件中。
请注意,这只是一个简单的示例代码,你可能需要根据你的需求和图像特点来调整代码。
完整代码:
import cv2# 读取图片
image = cv2.imread('1.jpg')# 对图像进行预处理
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
blurred = cv2.GaussianBlur(gray, (5, 5), 0)
thresholded = cv2.threshold(blurred, 60, 255, cv2.THRESH_BINARY)[1]# 查找图像中的轮廓
contours, _ = cv2.findContours(thresholded, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)# 对每个轮廓进行处理
for c in contours:# 计算轮廓的边界框x, y, w, h = cv2.boundingRect(c)# 在图像上绘制边界框cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)# 计算物体的尺寸size = w * h# 在图像上添加文本,显示物体的尺寸cv2.putText(image, f'Size: {size}', (x, y - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 255, 0), 2)# 显示处理后的图像
cv2.imshow('Image', image)
cv2.waitKey(0)# 保存处理后的图像
cv2.imwrite('image_processed.jpg', image)
python编程实现图片内多个物体尺寸测量相关推荐
- opencv实战---物体尺寸测量
物体尺寸测量的思路是找一个确定尺寸的物体作为参照物,根据已知的计算未知物体尺寸. 如下图所示,绿色的板子尺寸为220*300(单位:毫米),通过程序计算白色纸片的长度. 目录 1.相关库 2.读图+图 ...
- python编程生日快乐图片_Python 一键生成漂亮的生日快乐词云!
前段时间写了几篇关于生成词云的文章,其中包括: Python 情人节超强技能 导出微信聊天记录生成词云 Python 绘制悼念的词云蜡烛 等等,但是这几篇文章的转化对象都必须是多词汇组成的,也就是说他 ...
- C#实现物体尺寸测量(利用坐标转换)
由于需要实现一个物体的测量,但是已有QT程序,最后的整体功能需要在C#集成实现. 首先有两个方案:(1)利用已有的QT程序以及界面,直接在C#中调用QT,或者C++程序,但是经过尝试,发现两者之间进行 ...
- 图像式物体尺寸测量算法设计
目标:设计算法,根据一系列二维图像估计图中待测矩形物体的几何尺寸. 要求:误差小,运行速度快,占内存小,嵌入式平台,产品成本不能太高. 最近接到领导任务,要求评估根据二维图像测量物体尺寸的算法可行性. ...
- 【Python编程】图片缩放
导入必要的库 import os import cv2 定义缩放函数 def resize_img(DATADIR, data_k, img_size):w = img_size[0]h = img_ ...
- chatgpt赋能python:Python中如何实现内循环到外循环
Python中如何实现内循环到外循环 Python是一种广泛使用的编程语言,其文本解析和数据结构操作灵活,让Python编程变得非常简单.在Python编程中,内循环到外循环是常见的问题,因此本文将着 ...
- python编程图片大全_Python编程实现的图片识别功能示例
本文实例讲述了Python编程实现的图片识别功能.分享给大家供大家参考,具体如下: 1. 安装PIL,官方没有WIN64位,Pillow替代 pip install Pillow-2.7.0-cp27 ...
- arp协议分析python编程实现arp欺骗抓图片
arp协议分析&python编程实现arp欺骗抓图片 序 学校tcp/ip协议分析课程老师布置的任务,要求分析一种网络协议并且研究安全问题并编程实现,于是我选择了研究arp协议,并且利用pyt ...
- 1000道Python题库系列分享21(11道编程题:内置函数专项练习)
本期题目,答案在文末: 温馨提示 进入公众号,通过菜单"最新资源"==>"历史文章"可以快速查看分专题的文章列表,通过"最新资源"== ...
最新文章
- java控制台编程_java用Console开发控制台程序
- 英伟达RTX 30系列卖得太好,财报业绩创新高,老黄:Arm收购完成时间已确定
- elasticsearch的索引自动清理及自定义清理
- 看穿机器学习(W-GAN模型)的黑箱
- 列举6个常见且实用的Web前端性能优化方法
- spark 源码分析之十三 -- SerializerManager剖析
- c语言中常用的预处理命令6,C语言的预处理命令
- 不使用杀毒软件就上网也不会感染计算机病毒,【判断题】不使用杀毒软件就上网也不会感染计算机病毒。
A. 正确
B. 错误...
- python计算机中丢失api-ms-win-crt-runtime-l_api-ms-win-crt-runtime-l1-1-0.dll
- java打印字符串引用_Java中的字符串及其中的常用方法
- 【服务器】【个人图床】宝塔安装Chevereto
- 成功解决TypeError: a bytes-like object is required, not ‘str‘
- 吴恩达机器学习和深度学习视频和笔记
- 开三个iframe不断刷访问量
- 网页截长图、全图的方法
- docker 分析cpu占用过高
- 从C快速入门C++ (命名空间、引用、函数重载)
- uni-app H5 的下载,如何实现
- tiktok海外直播红人带货
- 推荐一些硬核的公众号
热门文章
- Oracle 常用系统字典表
- Python 时间复杂度计算
- 基于javaweb的儿童摄影预约系统(java+ssm+jsp+js+jquery+mysql)
- galera mysql5.7.17_MySQL Galera集群搭建流程(Percona XtraDB Cluster 5.7)
- dpdk 程序绑核失败问题:EAL: pthread_setaffinity_np failed
- CMD - 查找 findstr
- verilog定点数
- Unity-PlayMaker
- python脚本自动化赚钱系统_自从用python写了个自动弹幕脚本后,各大主播都来找我,净赚十万!...
- 带你走出误区 戳穿Windows XP的经典谣言