middlebury立体匹配评估使用方法总结(二)——python版离线教程
创始人
2024-04-12 06:33:11
0

系列文章目录

middlebury立体匹配评估使用方法总结(一)——网站说明
middlebury立体匹配评估使用方法总结(二)——python版离线教程


文章目录

  • 系列文章目录
  • 前言
    • 1.下载内容
    • 2.配置环境
    • 3.elas编译
    • 4. 运行评估
  • 总结


前言

  最近想使用middlebury数据集测一下算法的效果如何,奈何网上没有完整的搭建middlebury离线环境的教程,自己查阅资料和阅读官方readme文档总结如下教程。
推荐两个博主的文章,非常有用。
windows下Middlebury离线工具使用(补充)
立体视觉数据集之MiddleBury离线使用踩坑记录(Windows+Cygwin)


1.下载内容

进入middlebury官网
请添加图片描述
README.txt可以查看官方给的方案。
在这里插入图片描述
1、,下载并解压MiddleEval3-data-Q.zip(原始图片及校正参数)、MiddleEval3-GT0-Q.zip(标准视差图)。(F、H、Q代表了三个不同的分辨率,按照自己的需要下载不同分辨率的图片,也可以都下载下来,一共15组,没多大),解压到同一个文件夹下,合并起来就跟说明书里面的contents部分的结构一样了。
在这里插入图片描述

2、下载MiddEval3-SDK-1.6.zip(离线评测工具),是一些由c++代码和shell脚本组成的SDK,可以在windows环境下运行,能够在所有数据集上运行算法,评估训练集结果,和为结果创建压缩文件以及上传。进行检测需要使用后缀为.pfg的PFM格式的视差图像(算法处理后的结果图)。
在这里插入图片描述

3、下载cvkit工具包,用于查看.pfm格式的文件。
在这里插入图片描述

2.配置环境

1、安装cmake
2、安装cygwin(cygwin安装时需要手动选择make和tcsh)
3、安装MinGW(官网下载的MinGW是不包含扩展包的,然而MiddleBury中的使用到了libpng这个扩展包,所以这里分享了一个自带扩展包的MinGW,链接已经在上面了。)
4、分别为cmake、cygwin、MinGM配置环境变量。
在这里插入图片描述

3.elas编译

 官方文档说明
在这里插入图片描述
在middlebury文件夹下cmd执行

cd alg-ELAS/build
cmake ..
make
cd ../..

code/imageLib/ImageIOpng.cpp中的png.h可能会出现找不到的情况,所以需要手动添加如下代码:
路径改成自己的MinGW安装路径

extern "C"{
#include "E:\\MinGW\\MinGW\\include\\png.h"
}

在middlebury文件夹下cmd执行

cd code/imageLib
make
cd ..
make
cd ..

4. 运行评估

  打开cygwin终端 ,参考在 windows 下的某目录中右键打开 cygwin 终端

  输入指令,可以查看相关操作

/.runeval

在这里插入图片描述

  通过python中opencv代码可以获取pfm的视差图,建议直接保存为pfm文件,放到对应的测试文件目录下,即可进行测试。

cv2.imwrite("test.pfm",disp)

在这里插入图片描述
  在cygwin中输入指令,进行测试

./runeval Q Adirondack 1

在这里插入图片描述

总结

mask:(水平/垂直方向上的)非遮挡区域比例
bad1.0 传递的阈值为1的时候,坏点率:即和真实结果在对应像素点位置的值的差距大于阈值的点的比例
invalid 无效点率 ,指的是那些黑色点,匹配失败,灰度为无穷大
totbad 总体坏点,坏点率 + 无效点率
avgErr 平均误差:所有的有效的点和真实结果的点的灰度差的累加和/所有有效点个数

粘贴一下我的文件夹图,大家可以对照一下,看却些什么。
在这里插入图片描述

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...