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

iis默认网站路径网站建设佰金手指科杰二五

iis默认网站路径,网站建设佰金手指科杰二五,定制微信小程序价格,好网站范例2025 年全国大学生电子设计竞赛 C 题 发挥部分 1:多正方形 / 重叠正方形高精度识别与最小边长测量 香橙派 OpenCV C 全流程解析 目录 赛题背景与需求技术难点全景图系统总体架构硬件平台与接线软件架构与线程模型算法流水线逐帧拆解 6.1 图像预处理6.2 轮廓提取与…

2025 年全国大学生电子设计竞赛 C 题

发挥部分 1:多正方形 / 重叠正方形高精度识别与最小边长测量

香橙派 + OpenCV C++ 全流程解析


目录

  1. 赛题背景与需求
  2. 技术难点全景图
  3. 系统总体架构
  4. 硬件平台与接线
  5. 软件架构与线程模型
  6. 算法流水线逐帧拆解
    • 6.1 图像预处理
    • 6.2 轮廓提取与面积过滤
    • 6.3 重叠正方形分割:向量夹角法
    • 6.4 最小正方形边长计算
    • 6.5 透视畸变补偿
    • 6.6 亚像素级优化
  7. 关键代码剖析
  8. 香橙派编译与烧录
  9. 调试工具链
  10. 性能 Benchmark
  11. 常见问题 FAQ
  12. 拓展阅读与开源仓库

1 赛题背景与需求

2025 年电赛 C 题 发挥部分 1 要求:

指标说明
目标正方形组合图形,6 cm ~ 12 cm 边长
状态可彼此分离,也可 局部重叠 ≤ 30 %
输出最小正方形边长,误差 ≤ 0.5 cm
限制单目固定摄像头,禁止 PC,一键启动,5 s 内完成

2 技术难点全景图

难点场景示例传统方案痛点本文解决策略
边缘粘连两正方形重叠 25 %大轮廓误判为 1 个向量夹角分割
透视拉伸视角倾斜 45°像素长度失真Homography + cosθ 补偿
实时性720 p 30 fpsCPU 满载 80 %NEON + ROI 裁剪
量化误差像素 → 厘米±1 px ≈ ±0.8 cm亚像素角点
零依赖现场无网Tesseract 不可用纯 OpenCV

3 系统总体架构

在这里插入图片描述

4 硬件平台与接线

模块接口引脚供电备注
OV5640MIPI-CSICAM13.3 V自带 24 MHz 时钟
OLEDI²C1PB8_SCL PB9_SDA3.3 V128×64 SSD1306
按键GPIOPC133.3 V一键启动
调试串口UART0PA9_TX PA10_RX5 V→3.3 VCH340G

5 软件架构与线程模型

  • main.cpp
    • 初始化摄像头 → 启动 4 个 std::thread
  • pic_deal.cpp
    • 预处理、轮廓、重叠分割、最小边计算
  • thread_deal.cpp
    • 多线程队列 & 条件变量无锁同步
  • uart.cpp
    • 实时日志 + 结果回传

6 算法流水线逐帧拆解

6.1 图像预处理

Mat gray;
cvtColor(frame, gray, COLOR_BGR2GRAY);
Ptr<CLAHE> clahe = createCLAHE(2.0, Size(8,8));
clahe->apply(gray, gray);
GaussianBlur(gray, blur, Size(5,5), 1);
Canny(blur, edges, 50, 150);

6.2 轮廓提取与面积过滤

vector<vector<Point>> contours;
findContours(edges, contours, RETR_EXTERNAL, CHAIN_APPROX_SIMPLE);
vector<RotatedRect> candidates;
for(auto& c : contours){double a = contourArea(c);if(a < 500 || a > 0.3*frame.total()) continue;RotatedRect rr = minAreaRect(c);float ratio = rr.size.width/rr.size.height;if(ratio > 0.9f && ratio < 1.1f)candidates.push_back(rr);
}

6.3 重叠正方形分割:向量夹角法

6.3.1 四边形顶点排序
vector<Point2f> orderPointsAlongContour(const vector<Point>& contour,const vector<Point2f>& pts){vector<float> cumLen(contour.size());float acc = 0;for(size_t i=1;i<contour.size();++i){acc += norm(contour[i]-contour[i-1]);cumLen[i]=acc;}/* 省略累积归一化与二分查找 */return ordered;
}
6.3.2 向量夹角验证
const double ANGLE_THRESH = CV_PI/18.0; // 10°
for(size_t i=0;i<ordered.size();i+=4){Point2f v1 = ordered[(i+1)%4]-ordered[i];Point2f v2 = ordered[(i+2)%4]-ordered[(i+1)%4];double angle = fabs(atan2(v1.cross(v2), v1.dot(v2)));if(angle < ANGLE_THRESH){squares.emplace_back(ordered[i], ordered[(i+1)%4]);}
}

6.4 最小正方形边长计算

double minSide = DBL_MAX;
for(const auto& sq : squares){double len = norm(sq.first - sq.second);minSide = std::min(minSide, len * scale_w);
}
squareEdgeResult.minEdgeLength = minSide;

6.5 透视畸变补偿

  • Homography 计算:利用 A4 纸 4 角点
  • cosθ 修正
    在这里插入图片描述

6.6 亚像素级优化

cornerSubPix(gray, corners, Size(5,5), Size(-1,-1),TermCriteria(TermCriteria::EPS+TermCriteria::MAX_ITER, 30, 0.001));

7 关键代码剖析

文件职责亮点
shibie_Square_min.cpp重叠分割 + 最小边向量夹角法零依赖
pic_deal.cpp全流程NEON intrinsics 加速
thread_deal.cpp多线程无锁队列 + condition_variable

8 香橙派编译与烧录

8.1 依赖

sudo apt update
sudo apt install build-essential cmake libopencv-dev

8.2 一键脚本

git clone https://github.com/langhaofu/2025-C-Software.git
cd 2025-C-Advance
chmod +x build.sh run.sh
./build.sh   # 约 45 秒
./run.sh     # 自动识别 /dev/video0

9 调试工具链

工具用途指令
htopCPU 占用htop
perfNEON 指令perf stat ./bin/2025_C
v4l2-ctl摄像头参数v4l2-ctl -d 0 --list-formats-ext
imwrite("debug.jpg")中间结果现场回溯

10 性能 Benchmark

场景真值测量误差耗时
两正方形重叠 25 %最小 8 cm8.1 cm0.1 cm1.7 s
三正方形并排最小 6 cm6.0 cm0.0 cm1.5 s
倾斜 40° 重叠最小 10 cm10.2 cm0.2 cm1.8 s
随机 5 正方形最小 7 cm7.1 cm0.1 cm1.6 s

11 常见问题 FAQ

问题根因解决
最小边 0 cm角点 <4 个降低 Canny 阈值
重叠未分割面积过滤过严调低 minArea
CPU 100 %NEON 未开启-mfpu=neon
画面卡顿分辨率过高锁 640×480

12 拓展阅读与开源仓库

  • GitHub:github.com/langhaofu/2025-C-Software
  • 香橙派镜像:2025-C-ubuntu-22.04-lite.img.xz

本方案 纯 OpenCV 实现,已在现场验证 1.8 s 完成全流程。欢迎 Star & PR!

http://www.dtcms.com/a/421903.html

相关文章:

  • 个人备案能做公司网站吗表格制作手机软件
  • 做暧暖ox网站长沙建设教育网
  • 成功网站管理系统淘宝客网站如何做
  • 如何让网站收录滨海企业做网站多少钱
  • 内部网站建设计划做网站必备
  • 网站域名管理权限wordpress 简洁 模板
  • 网站云解析域名解析crm客户关系管理系统源码
  • 网站备案授权书模板wordpress豆瓣主题
  • 自己做网站能宣传自己的产品吗网站建设与管理规划书
  • 在凡科做网站编辑上海知名网站开发公司
  • 大学个人网站期末作业上海市建设安全协会网站j
  • 精品课程网站建设 公司行业网站开发方案
  • 公司网站设计哪家公司好郑州专门做喷绘安装的网站
  • pc建站家电网站设计方案
  • 在线图片处理网站国家反诈中心app下载安卓版
  • 例点估算网站开发项目工作量万能素材网站下载
  • 网站如何跳转网站的关键词推扩是怎样做
  • 新手如何做网站维护做挂广告网站
  • 济南网站建设方案书范文金融行业高端网站制作
  • 南城网站建设公司策划平台网站建设源码
  • 网站建设收费标准不一烟台专业的网站建站公司
  • wordpress h1做搜狗pc网站优化排
  • dw班级网站建设网站的分析
  • 嘉兴专业网站建设网站建设平台方案
  • 怎样做好网站建设制作书签作文
  • 哪个网站可以看一级a做爰片t沃尔玛网上超市
  • 无锡网站网站建设门户网站有哪些类型
  • 网站建设难做吗可以做热图的在线网站
  • 佛山做网站优化公司襄阳机械加工网
  • 做瞹瞹嗳免费网站在线观看网站文字特效