当前位置: 首页 > news >正文

上位机图像处理和嵌入式模块部署(qmacvisual点线测量)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        上面一篇文章,我们完成了直线的拟合操作。在实际场景中,拟合之后更多地是需要进行长度的测量。既然是测量,那么就需要两个信息,一个是测量点的信息,这部分目前可以通过设置全局变量的方法来完成;另外一个就是需要直线的k和b,这部分也已经通过直线拟合实现了。所以,点线测量实际并不复杂。而且,真实应用的时候,这里的点往往也是来自于某个固定目标的点,或者是人为设计的某个点。

1、控件位置

        控件的位置位于【几何测量】-》【点+线】。当然基础工程、基础流程都是需要配置的,这里不再赘述了。

2、配置全局变量

        因为点线测距,既需要点,也需要线。线已经准备好了,所以这里只需要设置一个全局变量的点就好了,

3、整体设计

        整体设计,基本上是前面几节课的一个大总结。首先是读取图像,读取结束之后就开始图像预处理。预处理完毕,就可以着手轮廓的提取。有了轮廓,就有了重心坐标,当然也就可以拟合直线了。最后就是用点线插件计算一下交集。

4、点线配置

        点线配置,就是我们之前所说的点、线设置。这部分已经讨论过。点来自于全局变量,线来自于直线拟合。大家看一下这个截图就明白了,

        从图上可以明显看出主要的配置。配置的内容集中在点坐标、直线斜率、直线截距三个部分。右侧是单击执行按钮之后的效果。如果没有什么问题,我们就可以在左下方看到对应的打印效果。结果告诉我们,两者之间的交点是239、367,距离为154。

        实际应用中,摄像头安装好了之后,一般几个标记点的位置都是固定的,比如这里的P点。甚至于说,这里的P点有好几个。但是它们共同的特点就是,一般摄像头安装好了之后,位置就相对固定了,所以通过这样的固定点当成参考点,很容易计算出这个点到其他直线、圆、长方形的距离。只不过这里为了测试和验证,我们随机设定了一个数值。真实部署的时候,这些点都需要单独标定的。

5、丰富一下结果输出部分

        在整体设计当中,我们其实还添加了两个图像显示。一个是源图像的显示,一个是输出结果的显示。主要也是为了体现两者之间的对比之处。一幅图像从拿到之后,到出结果,这中间往往还是要走一段距离的。我们今天的demo尚且都需要思考一番,实际部署的时候,遇到的情况只会更烦、更麻烦。遇到这些困难和麻烦的时候,一定要迎难而上,因为实际学习遇到的场景往往都是简单的、单一的,它不能帮助客户解决真实存在的问题,这是最要命的。

        另外从我个人的经验来说,还有两点需要注意。第一,就是加强人工智能的学习,未来的硬件只会越来越便宜,算力越来越强,这意味着用软件可以做的事情也越来越多;第二就是加强传感器的学习。图像只是众多传感器中的一环,图像中不确定的信息可以试着能不能由其他传感器来进行补充解决,这很重要。算法固然重要,但是光源、镜头、其他传感器的配合也一样重要,我们要用好图像,但是也不能排斥其他传感器和方法。

        

相关文章:

上位机图像处理和嵌入式模块部署(qmacvisual点线测量)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 上面一篇文章,我们完成了直线的拟合操作。在实际场景中,拟合之后更多地是需要进行长度的测量。既然是测量,那么…...

yolov5训练并生成rknn模型部署在RK3588开发板上,实现NPU加速推理

简介 RK3588是瑞芯微(Rockchip)公司推出的一款高性能、低功耗的集成电路芯片。它采用了先进的28纳米工艺技术,并配备了八核心的ARM Cortex-A76和Cortex-A55处理器,以及ARM Mali-G76 GPU。该芯片支持多种接口和功能,适…...

SCI一区 | Matlab实现SSA-TCN-BiGRU-Attention麻雀算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测

SCI一区 | Matlab实现SSA-TCN-BiGRU-Attention麻雀算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测 目录 SCI一区 | Matlab实现SSA-TCN-BiGRU-Attention麻雀算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测预测效果基本介绍模型描述程序…...

javaSwing宿舍管理系统(三个角色)

一、 简介 宿舍管理系统是一个针对学校宿舍管理的软件系统,旨在方便学生、宿管和管理员进行宿舍信息管理、学生信息管理以及宿舍评比等操作。该系统使用 Java Swing 进行界面设计,分为三个角色:管理员、宿管和学生。 二、 功能模块 2.1 管…...

蓝桥杯day12刷题日记

P8720 [蓝桥杯 2020 省 B2] 平面切分 思路&#xff1a;首先借用dalao的图解释一下&#xff0c;又多出一条与当前平面任意一条直线都不重合线时&#xff0c;多了的平面是交点数1&#xff0c;所以用双层循环每次往里面加一条直线&#xff0c;计算交点 #include <iostream>…...

深度学习pytorch——多分类问题(持续更新)

回归问题 vs 分类问题&#xff08;regression vs classification&#xff09; 回归问题&#xff08;regression&#xff09; 1、回归问题的目标是使预测值等于真实值&#xff0c;即predy。 2、求解回归问题的方法是使预测值和真实值的误差最小&#xff0c;即minimize dist(p…...

Flutter探索之旅:控制键盘可见性的神奇工具(flutter_keyboard_visibility)

随着移动应用的不断发展&#xff0c;用户体验的重要性愈发突显。而键盘的弹出和隐藏对于用户体验来说是至关重要的一环。在Flutter中&#xff0c;我们有幸拥有一个强大的工具——flutter_keyboard_visibility&#xff0c;它让我们能够轻松地监测键盘的可见性并做出相应的响应。…...

提升质量透明度,动力电池企业的数据驱动生产实践 | 数据要素 × 工业制造

系列导读 如《“数据要素”三年行动计划&#xff08;2024—2026年&#xff09;》指出&#xff0c;工业制造是“数据要素”的关键领域之一。如何发挥海量数据资源、丰富应用场景等多重优势&#xff0c;以数据流引领技术流、资金流、人才流、物资流&#xff0c;对于制造企业而言…...

华为数通 HCIP-Datacom H12-831 题库补充

2024年 HCIP-Datacom&#xff08;H12-831&#xff09;最新题库&#xff0c;完整题库请扫描上方二维码&#xff0c;持续更新。 缺省情况下&#xff0c;PIM报文的IP协议号是以下哪一项&#xff1f; A&#xff1a;18 B&#xff1a;59 C&#xff1a;103 D&#xff1a;9 答案&a…...

tensorflow中显存分配

tensorflow中显存分配 问题&#xff1a;使用tensorflow-gpu训练模型&#xff0c;GPU的显存都是占满的。 # GPU 1的显存将占满 os.environ["CUDA_VISIBLE_DEVICES"] "1" 原因&#xff1a;默认情况下&#xff0c;tensorflow会把可用的显存全部占光&#…...

STM32--RC522学习记录

一&#xff0c;datasheet阅读记录 1.关于通信格式 2.读寄存器 u8 RC522_ReadReg(u8 address) {u8 addr address;u8 data0x00;addr((addr<<1)&0x7e)|0x80;//将最高位置一表示read&#xff0c;最后一位按照手册建议变为0Spi_Start();//选中从机SPI2_ReadWriteByte(ad…...

函数封装冒泡排序

大家好&#xff1a; 衷心希望各位点赞。 您的问题请留在评论区&#xff0c;我会及时回答。 一、冒泡排序 冒泡排序是最常见的一种排序算法&#xff0c;按照指定顺序比较相邻元素&#xff0c;如果顺序不同&#xff0c;就交换元素位置&#xff0c;每一趟比较&#xff0c;都会导致…...

mysql基础学习

一、DML 介绍&#xff1a;DML(数据操作语言&#xff09;&#xff0c;用来对数据库中表的数据记录进行增删改操作。 1.添加数据 /*给指定字段添加数据*/ insert into user(id, name) values (1,小王); select *from user;/*查询该表的数据*/ /*给所有字段添数据*/ insert int…...

mybatisplus提示:Property ‘mapperLocations‘ was not specified.

1、问题概述&#xff1f; 在使用springboot整么mybatisPlus启动的使用提示信息&#xff1a; Property mapperLocations was not specified. 但是我确实写了相对应的配置&#xff1a; 【在pom文件中配置xml识别】 <resources><resource><directory>src/m…...

【STL源码剖析】【2、空间配置器——allocator】

文章目录 1、什么是空间配置器&#xff1f;1.1设计一个简单的空间配置器&#xff0c;JJ::allocator 2、具备次配置力( sub-allocation)的 SGI 空间配置器2.1 什么是次配置力2.2 SGI标准的空间配置器&#xff0c;std::allocator2.2 SGI特殊的空间配置器&#xff0c;std::alloc2.…...

机器人|逆运动学问题解决方法总结

如是我闻&#xff1a; 解决逆运动学&#xff08;Inverse Kinematics, IK&#xff09;问题的方法多样&#xff0c;各有特点。以下是一个综合概述&#xff1a; 1. 解析法&#xff08;Analytical Solutions&#xff09; 特点&#xff1a;直接使用数学公式计算关节角度&#xff0…...

php搭建websocket

workerman文档&#xff1a;https://www.workerman.net/doc/gateway-worker/unbind-uid.html 1.项目终端执行命令&#xff1a;composer require topthink/think-worker 2.0.x 2.config多出三个配置文件&#xff1a; 3.当使用php think worker:gateway命令时&#xff0c;提示不…...

maven install报错原因揭秘:‘parent.relativePath‘指向错误的本地POM文件

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 今天我要和大家分享的是关于maven install时报错的一个常见原因&#xff1a;parent.relativePath’指向错误的本地POM文件。这个问题可能会影响到的开发效率&#xff0c;甚至导致项目构建失败。那么&#xff0c;该如…...

数据结构·排序

1. 排序的概念及运用 1.1 排序的概念 排序&#xff1a;排序是将一组“无序”的记录序列&#xff0c;按照某个或某些关键字的大小&#xff0c;递增或递减归零调整为“有序”的记录序列的操作 稳定性&#xff1a;假定在待排序的记录序列中&#xff0c;存在多个具有相同关键字的记…...

Python学习笔记01

第一章、你好Python 初识Python Python的起源 1989年&#xff0c;为了打发圣诞节假期&#xff0c;Gudiovan Rossum吉多范罗苏姆(龟叔)决心开发一个新的解释程序(Python雏形) 1991年&#xff0c;第一个Python解释器诞生 Python这个名字&#xff0c;来自龟叔所挚爱的电视剧M…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh&#xff1f; debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...