使用Python

您所在的位置:网站首页 函数尺子怎么用视频 使用Python

使用Python

2024-07-13 00:46:38| 来源: 网络整理| 查看: 265

目录 前言一、开发前准备二、需要的库三、程序主体3.0 mian()3.1设置被调用的摄像头类型3.2调用相机3.3图像处理(轮廓端点查找)3.4边框绘制(数据计算)3.5比率计算3.6参照物选取(拍照)3.7实时测量 四、成果展示

前言

注意:不讲实现原理,也没有做UI,精度就玩玩的级别,记得打(尽量柔和的)光。

博主是一名机械设计制造及其自动化专业的学生,以前在车间上课时总需要挑选特定尺寸的毛坯作为被加工工件,奈何本人较懒,所以就有了码这么一个py文件出来助我偷懒的想法。 请添加图片描述

完整的文件(某U加速“学术资源”可以访问):

https://github.com/Yjie0929/object-size-measurement-based-on-OpenCV.git 一、开发前准备

喜欢用Pycharm还是Anaconda或其它都可以,没有关系。 因为摄像头使用的只是普通的家用摄像头(某夕夕个位数包邮),所以在码程序之前需要准备一个尺寸精度较高(尽量高)的参照物来获取欧氏距离和真实长度的比率。 穷得只能3D打印的屑博主:10mm³,20mm³,30mm³ 因为穷只能3D打印的屑博主

二、需要的库 from scipy.spatial.distance import euclidean # 用来计算端点之间的欧氏距离 import numpy as np import imutils import time import cv2 三、程序主体 3.0 mian() if __name__ == '__main__': camera_type = set_camera_type() # 设置相机类型 filter_area, reference_points = reference_processing() # 创建被过滤面积值 rate = rate_calculation() # 计算欧氏距离与实际距离的比率 real_time_processing() # 实现实时测量 3.1设置被调用的摄像头类型

这段函数是为了方便程序能够在内置相机或外置相机之间来回切换工作。如果确定仅使用外置相机的情况下可以忽略这一步。

def set_camera_type(): while True: try: set_type = int(input('摄像头调用(输入数字代号:0.内置,1.外置):')) except ValueError: delay('输入参数类型错误') continue else: if (set_type 1): delay('输出参数不在范围内') continue elif set_type == 0: print('选择:内置摄像头') else: print('选择:外置摄像头') break return set_type 3.2调用相机

如确认仅使用外置相机时将camera_type设置为‘1’,cv2.CAP_DSHOW为可选参数,在相机调用过程中出现不知名报错时试着加入。关于第二个if,是防止遇到窗口关闭了但又没有完全关闭的情况而导致的堵塞。

def call_camera(): camera = cv2.VideoCapture(camera_type, cv2.CAP_DSHOW) if camera.isOpened() is False: print('摄像头调用失败') raise AssertionError else: while True: frame = camera.read()[1] # 返回捕获到的RGB image = cv2.flip(frame, 1, dst=None) cv2.imshow('Camera', image) if (cv2.waitKey(1) > -1) or (cv2.getWindowProperty('Camera', cv2.WND_PROP_VISIBLE) 1: selected_points.clear() # 清空内容,为下一次存储数据用 filter_area += 1 else: break reference_area_point = draw_frame(image, selected_points, 0) while True: cv2.imshow('reference', image) if (cv2.waitKey(1) > -1) or (cv2.getWindowProperty('reference', cv2.WND_PROP_VISIBLE) filter_area] # 筛选后的端点 draw_frame(image, selected_points, 1) # 绘制边框 cv2.imshow('Camera', image) if (cv2.waitKey(1) > -1) or (cv2.getWindowProperty('Camera', cv2.WND_PROP_VISIBLE)


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭