- 博客(138)
- 资源 (3)
- 收藏
- 关注
原创 powershell 实现批量把文件夹下的bmp文件转换为jpg
摘要:本文提供了一个PowerShell脚本,用于批量将BMP图像转换为质量85的JPG格式。脚本通过System.Drawing程序集实现图像格式转换,支持指定源文件夹和目标文件夹路径,自动创建目标目录并保留原始文件。使用方法包括保存脚本为.ps1文件后执行,并支持自定义输出路径和质量参数。脚本会显示每个文件的转换进度和结果,处理错误情况,适合需要批量转换图像格式的用户使用。
2025-07-25 21:24:17
115
原创 霍尔传感器自学习原理解析
霍尔传感器自学习的核心是通过开环控制电机旋转,实时采样霍尔信号与电气角度的关系,自动计算霍尔安装的机械偏移量和相序方向。算法流程包括:施加固定电压使电机低速旋转,记录霍尔跳变时的电气角度,通过最小二乘法拟合偏移量,比较连续跳变方向确定相序。关键优化包括动态调整对齐电压、滑动平均滤波和容错机制。该方法适用于无编码器的BLDC控制,但需电机能自由旋转。最终实现自动适配霍尔参数,无需人工校准。
2025-07-08 13:48:53
628
原创 epson j4轴精度评估
摘要:J4轴可手动扭动而J1/J2不可动,反映了传动系统刚性差异。J4的扭动可能源于皮带传动的弹性变形、张紧不足或机械间隙。需通过静态测试(回差≤0.1°,重复定位±0.05°)和动态测试(激光跟踪)评估精度。轻微扭动偏移<0.2°属正常,>0.5°需检修。提升措施包括调整皮带张紧力、同步轮对齐、PID优化及硬件升级。若静态/动态精度均超差,需紧急维修以避免累积误差影响任务。建议使用激光跟踪仪进行更可靠的动态检测。
2025-07-04 16:01:12
372
原创 c#实现halcon的rle编码blob分析
本文展示了一个基于C#的图像处理类库实现,主要包含以下功能: 实现了图像膨胀、腐蚀、开运算、闭运算等形态学操作 提供了区域连通性分析和特征计算功能 采用RLE(游程编码)技术高效存储区域数据 支持从位图创建区域对象并进行阈值处理 计算区域特征包括面积、边界框和重心等 核心类HRegion使用字典结构存储行号和对应的区间列表,实现了快速区域操作和特征计算。该实现优化了内存使用和计算效率,适合处理二值图像区域分析任务。
2025-06-23 15:17:33
189
原创 opencv实现点到region最小距离,distance_pr
本文实现了一个基于OpenCV的distance_pr算子优化版本。算法首先将二值图像转换为RLE编码表示,然后构建区域凸包以加速距离计算。主要步骤包括:1) 将二值图像转换为RLE编码;2) 计算区域凸包;3) 使用射线法判断查询点是否在凸包内;4) 结合RLE编码和凸包信息进行快速距离计算。该实现通过凸包优化减少了不必要的计算,相比遍历所有像素点的方法更加高效。但未实现Halcon中的SIMD、多线程等进一步优化手段,仅提供了基础功能实现。
2025-06-17 10:11:25
236
原创 OpenCV中两个旋转矩形(RotatedRect)的交集计算优化技巧
这段代码实现了OpenCV中两个旋转矩形(RotatedRect)的交集计算。
2025-04-27 11:57:26
537
原创 工业相机Line1与Line2触发机制详解及电路防护设计
特性Line1 (光耦隔离输入)Line2 (可配置I/O)信号类型专用输入可编程输入/输出隔离方式光耦隔离无隔离(PPTC+TVS防护)防护等级高(隔离电压可达2500Vrms)中等(依赖PPTC+TVS)适用场景高噪声环境/高压场合一般工业环境/需要双向功能的场合。
2025-04-18 11:14:03
1019
原创 c# BitMap的data是rgb格式还是bgr格式
历史与底层图形库的依赖GDI/GDI+ 的遗留设计:C# 的 System.Drawing 命名空间基于 Windows 的 GDI/GDI+ 图形接口,而 GDI 在早期为了兼容某些硬件(如显卡帧缓冲)和旧标准,采用了 BGR 内存布局。这种格式在 Windows 系统中更高效,因为许多底层驱动和硬件优化(如 DirectDraw)默认支持 BGR。
2025-04-11 08:45:31
566
原创 海康a10嵌入式双目活体检测技术:原理、局限与攻防解析
嵌入式双目活体检测方案凭借低成本、高易用性成为门禁、考勤设备的首选,但其安全性并非绝对。防御能力取决于材质反射特性的建模精度、数据集的覆盖范围以及算法迭代速度。未来需从多光谱感知、生理特征融合、硬件-算法协同设计等维度持续优化,以平衡安全性与落地成本。
2025-04-07 11:59:24
763
原创 双目立体视觉的3D重建全流程
目的:获取相机内参(焦距 f、主点 (cx ,cy)、畸变系数)和外参(旋转矩阵 R、平移向量 T)。输出:生成点云(Point Cloud)或网格模型(Mesh),可用于可视化或进一步分析。输出:生成视差图(Disparity Map),每个像素值为左右图像的水平位移。位置:极线矫正后,立体匹配(Stereo Matching)阶段的核心步骤。方法:使用标定板(如棋盘格)拍摄多组图像,通过张正友标定法计算参数。优化:通过滤波(中值滤波、双边滤波)去除噪声,填补空洞。
2025-03-27 14:22:18
1061
原创 stm32 f1 外接大功率负载方案 6DI/8DO/4AI/1AO
24V工业电源] → [电源隔离转换] → [STM32F103C8T6]├─ [模拟输入模块](ADC+信号调理)├─ [模拟输出模块](PWM/DAC)├─ [通信接口](RS485/CAN)└─ [编程调试接口](SWD/USB)├─ [数字输出模块](达林顿驱动)├─ [数字输入模块](光耦隔离)
2025-03-26 16:33:59
197
原创 高性能二值化实现binaryThreshold
使用 AVX 指令 (mm256*) 实现了并行处理,每次处理 32 个像素。使用 cmpgt_epi8 进行并行比较,生成掩码。掩码与常量 255 结合生成二值化结果。
2025-01-10 17:23:00
197
原创 STM32 的 DCMI 接口与 ESP32 的 DVP 接口的区别与作用
在嵌入式系统中,图像传感器或摄像头模块的数据传输是一项常见且复杂的任务。为了实现图像数据的高效传输,许多微控制器和处理器设计了专用的接口。这些接口能够处理来自摄像头模块的并行图像数据流,并通过 DMA(直接内存访问)将其传输到内存中,从而减轻处理器的负担。STM32 的 DCMI(数字摄像机内存接口)和 ESP32 的 DVP(数字视频端口)接口都是为此目的而设计的,但它们在硬件架构、支持的功能和应用场景上有所不同。
2024-11-19 11:54:34
2009
原创 普通单片机为什么无法直接驱动dcmi接口相机
DVP(Digital Video Port)接口 是 ESP32 提供的一种硬件接口,专门用于处理并行视频数据流。它允许外设(如摄像头模块)通过多个并行数据线(如 8 根数据线)将数据传输到 ESP32,从而支持高效的视频数据处理。ESP32 内部的 DVP 接口与 DMA 控制器 配合使用,能够将这些并行数据直接传输到内存(例如 PSRAM 或 SRAM),从而避免了 CPU 的干预,并提高了数据传输的速度和效率。
2024-11-19 11:48:06
1266
原创 大华sdk c++回调踩坑 -102 IMV_INVALID_HANDLE
【代码】大华sdk c++回调踩坑 -102 IMV_INVALID_HANDLE。
2024-11-04 20:27:32
222
原创 YOLOv5 Anchor 训练与预测时的区别,为什么推理的时候不需要输入 Anchor ,Detect头解析
在 YOLOv5 中,Detect 类通过 register_buffer 将 Anchor 注册为模型的缓冲区。这种方式确保了 Anchor 不会被视为模型的可训练参数,并且在模型转移到不同设备或者保存和加载时,Anchor 的值能保持一致。Anchors 在推理阶段用于解码网络输出的特征图,生成实际的边界框。虽然在训练过程中 Anchors 似乎没有被直接使用,但它们在目标分配和损失计算中起到了至关重要的作用。
2024-10-14 16:03:21
1168
原创 js实现类似halcon的代码编辑器,支持断点调试 ,步过 ,单步执行,任意跳转执行,图像变量监控,数值变量监控
本文介绍了一个基于Vue和ElementUI前端、CPP后端内嵌Lua引擎的调试系统。系统支持对Lua代码进行逐行解释执行,并提供完整的调试功能,包括断点调试(Step Over/Step Into)、变量监控(数值和图像变量)以及任意跳转执行。文中通过三个GIF动图展示了调试过程的实际效果:第一个演示断点调试功能,第二个展示变量监控能力,第三个说明代码跳转执行特性。该系统通过注入OpenCV函数,实现了对图像处理相关代码的调试支持。
2024-09-23 12:11:17
280
原创 threejs加载高度图渲染点云,不支持tiff
问题点使用的point来渲染点云,大数据图片无效渲染点多(可以通过八叉树过滤掉无效点增加效率,但是这个太复杂),但是胜在简单能用code代码可运行,无需npm<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2024-09-20 11:25:19
921
原创 js实现lua解释器,类似halcon代码编辑器一行一行解释执行
只能一行一行执行,不能有一行代码跨越多行,不支持lua的表,只支持for i的循环,支持自定义函数,并且可以跳到函数里面一行一行执行,这里的函数并不是lua的函数,而是由js状态控制执行函数里的代码,if for 循环一样也是由js状态机跟踪状态并执行对应指令,函数之前的变量使用lua的表进行隔离,每个函数对应一个函数名的表,函数直接的参数传递由js状态机自动复制到函数对应的表中,包括函数的返回值。
2024-09-05 16:28:24
356
原创 大华工业相机c++软触发代码
/ 本Demo为简单演示SDK的使用,没有附加修改相机IP的代码,在运行之前,请使。// 本工程演示了发现设备,连接设备,设置软触发,软触发,断开连接操作。// 用相机客户端修改相机IP地址的网段与主机的网段一致。/// \brief 软触发示例。
2024-08-26 15:00:05
636
原创 js使用run编码计算region的交集并集差集
转为run编码后再运算可以节约大量内存subtractIntervals 函数的逻辑:目前的实现假设了所有的 subIntervals 都会与 intervals 完全重叠,这可能导致计算不准确。应该将 subIntervals 从 intervals 中去除时,考虑到可能的部分重叠。差集计算:subtractIntervals 函数需要更准确地处理部分重叠和完整重叠的情况。
2024-08-19 15:08:28
327
原创 a newer or same version is present nvidia解决方案
或者Night Visual Editor 失败,把显卡驱动卸载掉,打开service.mtc 服务控制面板,把nvidia开头的服务全停掉,重新启动cuda安装程序选择自定义安装 vse visual studio相关的不勾选。
2024-07-15 17:11:46
1796
原创 多项式畸变模型的局限性:为何不能保证所有点完全校正到理想位置
在图像处理和计算机视觉领域,镜头畸变是一种常见现象,尤其在广角镜头和低质量镜头中更为明显。镜头畸变会导致图像中的直线变为曲线,影响图像的几何准确性。为了校正这些畸变,通常使用多项式畸变模型。然而,这些模型并不能保证所有点都完全校正到理想位置。本文将探讨多项式畸变模型的局限性及其原因。
2024-07-11 13:36:54
664
原创 js实现blockly后台解释器,可以单步执行,可以调用c/c++函数
解析blockly语法树,使用js管理状态,实际使用lua执行,c/c++函数调用使用lua调用c/c++函数的能力可以单行执行已实现if功能 for循环功能 函数功能单步执行效果图。
2024-06-25 14:40:46
542
js使用canvas实现画roi功能,并实现交集并集差集操作支持圆形,矩形,旋转矩形绘制,鼠标像素拾取,图片缩放,图片拖拽,像素
2024-04-02
yapi baseurl修改版前端静态资源文件
2020-02-27
markdown转html带样式
2018-11-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人