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

基于双目立体视觉的羊体尺参数提取及三维重构的解析方案【附代码】

✨ 长期致力于羊体尺参数、双目立体视觉、三维重构、图像分割、测点识别研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。
✅ 专业定制毕设、代码
如需沟通交流,点击《获取方式》


(1)改进Graph Cut与多尺度分水岭融合的羊体图像分割:

在真实养殖场复杂背景下,先采用多尺度分水岭算法预分割,再用模糊C均值初始化Graph Cut的种子点。交互次数从15次降到6次,平均分割时间6.47秒,分割准确率97%。针对曝光过度图像,采用带色彩恢复的多尺度Retinex增强,提高暗部细节。对200张羊图像测试,分割度量值F达到0.97。

(2)基于包络线分析的体尺测点自动识别:

从分割轮廓中提取羊体包络线,通过曲率极值定位关键点。体长测点为鼻尖到尾根的最远点对,体高为肩胛最高点,胸深为肩胛后缘垂直距离。对50头羊的二维图像测量,体长平均误差1.6cm,相对误差1.92%。采用偏最小二乘回归建立体重预估模型,包含体长、体高、臀高三个变量,预测体重平均相对误差3.17%。

(3)双目立体视觉稠密点云与NURBS曲面重构:

利用SIFT特征匹配和RANSAC极线约束获得稀疏匹配点,再通过区域生长插值生成稠密点云。点云去噪采用统计滤波,保留距离均值1.5倍标准差内的点。采用NURBS曲面拟合重构羊体三维模型,从模型中提取胸围和管围。30只羊的实测对比显示,体尺综合检测相对误差3.47%,胸围误差4.2%。虽然略高于主动式激光扫描,但无需接触且成本低。

import numpy as np import cv2 from scipy.spatial import cKDTree class SheepSegmentation: def __init__(self): self.msr_scale = [15,80,200] def msr_enhance(self, img): img_float = img.astype(np.float32)/255.0 log_img = np.log(img_float + 1e-5) for sigma in self.msr_scale: blur = cv2.GaussianBlur(img_float, (0,0), sigma) log_blur = np.log(blur + 1e-5) log_img -= log_blur return np.exp(log_img) def graph_cut_seg(self, img, seeds): # 使用opencv的grabcut简化 mask = np.zeros(img.shape[:2], np.uint8) rect = (10,10, img.shape[1]-20, img.shape[0]-20) bgdModel = np.zeros((1,65), np.float64) fgdModel = np.zeros((1,65), np.float64) cv2.grabCut(img, mask, rect, bgdModel, fgdModel, 5, cv2.GC_INIT_WITH_RECT) return mask class BodyMeasure: def extract_contour_points(self, mask): contours, _ = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) cnt = max(contours, key=cv2.contourArea) # 计算凸包和曲率 hull = cv2.convexHull(cnt) return hull.reshape(-1,2) def measure_body_length(self, points): # 最远点对 tree = cKDTree(points) dist, idx = tree.query(points, k=2) far_pair = np.argmax(dist[:,1]) return np.linalg.norm(points[far_pair] - points[idx[far_pair,1]])

http://www.gsyq.cn/news/1443535.html

相关文章:

  • OpenCV点云投影实战:从3D到2D,手把手教你用projectPoints()搞定相机标定后处理
  • 矿物类中药炉甘石鉴定方法的系统方案【附数据】
  • 实战指南:5步深度部署changedetection.io网站变更监控系统
  • 基于ESP8266与HomeKit的智能烛台:从硬件搭建到Siri语音控制
  • 2026鄂州市防水补漏公司权威推荐:卫生间、阳台、屋顶、地下室、飘窗、外墙漏水,专业防水公司TOP5口碑榜+全维度测评(2026年6月最新深度行业资讯) - 防水百科
  • 从名词到动词,从独白到对话——岐金兰理论体系与全球哲思学术界的四重对话
  • 2026玉林市防水补漏公司权威推荐:卫生间、阳台、屋顶、地下室、飘窗、外墙漏水,专业防水公司TOP5口碑榜+全维度测评(2026年6月最新深度行业资讯) - 防水百科
  • 告别染色差异:手把手教你用pip安装wsi-normalizer处理多中心病理数据
  • 超越聊天框:AI Agent交互范式演进与可视化工作台设计
  • 从资质、报价、服务三个维度,盘点北京前五上门收酒全品类商户 - 品牌排行榜单
  • 从线性电源到USB-PD:开关电源核心原理与DIY实践全解析
  • AI自动化浪潮下的社会政策思考:从机器人税到转型治理
  • 此心光明,亦复何言:那个贵州山洞里的明朝人,为什么比现代心理学家更懂你的大脑
  • 避开这些坑!STM32F429移植LVGL内存优化与工程结构最佳实践
  • yuzu模拟器性能提升3倍:从新手到高手的完整实战指南
  • CobaltStrike完整攻击详解
  • 好简历 5 月下旬更新:React 简历编辑器、95 套模板、全新编辑体验
  • 用Python和PsychoPy从零搭建一个n-back工作记忆测试游戏(附完整代码)
  • VSCode搭建python环境(详细图文保姆级教程)
  • 音乐解锁终极指南:3分钟搞定加密音乐文件转换,实现全平台播放自由
  • 传统IT开发新课题(2026年5月)
  • 如何让微信聊天记录成为你的数字记忆宝库?WeChatMsg一键永久保存方案
  • 2026绍兴市防水补漏公司权威推荐:卫生间、阳台、屋顶、地下室、飘窗、外墙漏水,专业防水公司TOP5口碑榜+全维度测评(2026年6月最新深度行业资讯) - 防水百科
  • AI领域个人品牌构建:从播客到文字的内容矩阵策略
  • STM32F103C8T6最小系统实战:用CubeIDE+DMA搞定双路ADC采样与串口通信(附完整工程)
  • B站缓存视频解锁神器:m4s-converter终极使用指南
  • 3%AFFF/AR抗溶性水成膜泡沫灭火剂10大品牌排名,浙江金瑞恒3%低配比节省成本 - 品牌速递
  • VHDL实现FPGA双向计数器:从原理到BASYS 3板级验证
  • 从CLIP到AnomalyCLIP:手把手教你用Prompt Learning解锁医学影像的跨域异常检测
  • 别再纠结了!FPGA设计里AXI互联IP(SmartConnect)的选用避坑指南