资源简介
effective large scale stereo matching,用于快速立体匹配,代码量比较大,可以直接用在工程中。
代码片段和文件信息
/*
Copyright 2011. All rights reserved.
Institute of Measurement and Control Systems
Karlsruhe Institute of Technology Germany
This file is part of libelas.
Authors: Andreas Geiger
libelas is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 3 of the License or any later version.
libelas is distributed in the hope that it will be useful but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
libelas; if not write to the Free Software Foundation Inc. 51 Franklin
Street Fifth Floor Boston MA 02110-1301 USA
*/
#include “StdAfx.h“
#include “descriptor.h“
#include “filter.h“
#include
using namespace std;
Descriptor::Descriptor(uint8_t* Iint32_t widthint32_t heightint32_t bplbool half_resolution) {
I_desc = (uint8_t*)_mm_malloc(16*width*height*sizeof(uint8_t)16);
uint8_t* I_du = (uint8_t*)_mm_malloc(bpl*height*sizeof(uint8_t)16);
uint8_t* I_dv = (uint8_t*)_mm_malloc(bpl*height*sizeof(uint8_t)16);
filter::sobel3x3(II_duI_dvbplheight);
createDescriptor(I_duI_dvwidthheightbplhalf_resolution);
_mm_free(I_du);
_mm_free(I_dv);
}
Descriptor::~Descriptor() {
_mm_free(I_desc);
}
void Descriptor::createDescriptor (uint8_t* I_duuint8_t* I_dvint32_t widthint32_t heightint32_t bplbool half_resolution) {
uint8_t *I_desc_curr;
uint32_t addr_v0addr_v1addr_v2addr_v3addr_v4;
// do not compute every second line
if (half_resolution) {
// create filter strip
for (int32_t v=4; v
addr_v2 = v*bpl;
addr_v0 = addr_v2-2*bpl;
addr_v1 = addr_v2-1*bpl;
addr_v3 = addr_v2+1*bpl;
addr_v4 = addr_v2+2*bpl;
for (int32_t u=3; u I_desc_curr = I_desc+(v*width+u)*16;
*(I_desc_curr++) = *(I_du+addr_v0+u+0);
*(I_desc_curr++) = *(I_du+addr_v1+u-2);
*(I_desc_curr++) = *(I_du+addr_v1+u+0);
*(I_desc_curr++) = *(I_du+addr_v1+u+2);
*(I_desc_curr++) = *(I_du+addr_v2+u-1);
*(I_desc_curr++) = *(I_du+addr_v2+u+0);
*(I_desc_curr++) = *(I_du+addr_v2+u+0);
*(I_desc_curr++) = *(I_du+addr_v2+u+1);
*(I_desc_curr++) = *(I_du+addr_v3+u-2);
*(I_desc_curr++) = *(I_du+addr_v3+u+0);
*(I_desc_curr++) = *(I_du+addr_v3+u+2);
*(I_desc_curr++) = *(I_du+addr_v4+u+0);
*(I_desc_curr++) = *(I_dv+addr_v1+u+0);
*(I_desc_curr++) = *(I_dv+addr_v2+u-1);
*(I_desc_curr++) = *(I_dv+addr_v2+u+1);
*(I_desc_curr++) = *(I_dv+addr_v3+u+0);
}
}
// compute full descriptor images
} else {
// create filter strip
for (int32_t v=3; v
addr_v2 = v*bpl;
addr_v0 = addr_v2-2*bp
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 413696 2015-12-02 21:36 largeScaleOmp\Debug\largeScaleOmp.exe
文件 1196996 2015-12-02 21:36 largeScaleOmp\Debug\largeScaleOmp.ilk
文件 1641472 2015-12-02 21:36 largeScaleOmp\Debug\largeScaleOmp.pdb
文件 2359296 2015-12-02 21:07 largeScaleOmp\ipch\largescaleomp-a40dcaa8\largescaleomp-ca41a80b.ipch
文件 5408 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\cl.command.1.tlog
文件 49508 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\CL.read.1.tlog
文件 5632 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\CL.write.1.tlog
文件 34856 2015-12-02 21:08 largeScaleOmp\largeScaleOmp\Debug\desc
文件 535834 2015-12-02 21:09 largeScaleOmp\largeScaleOmp\Debug\elas.obj
文件 36866 2015-12-02 21:08 largeScaleOmp\largeScaleOmp\Debug\filter.obj
文件 406 2015-12-02 20:57 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.exe.em
文件 472 2015-12-02 20:57 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.exe.em
文件 381 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.exe.intermediate.manifest
文件 56 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.lastbuildstate
文件 4505 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.log
文件 252337 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.obj
文件 1179648 2015-12-02 21:08 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.pch
文件 713 2015-12-02 20:54 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.vcxprojResolveAssemblyReference.cache
文件 0 2015-12-02 20:54 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp.write.1.tlog
文件 216 2015-12-02 20:57 largeScaleOmp\largeScaleOmp\Debug\largeScaleOmp_manifest.rc
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
文件 2 2015-12-02 21:36 largeScaleOmp\largeScaleOmp\Debug\li
............此处省略78个文件信息
- 上一篇:基于图切算法的交互式图像分割技术
- 下一篇:OpenCV计算物体重心坐标代码以及工程
相关资源
- stereo matching using tree filtering
- 双目立体匹配图片集,很多经典图片
- 基于区域的立体匹配算法介绍
- stereoMatch
- 基于自适应窗口的立体匹配
- 立体匹配可用的图像对
- ELAS开源程序高效大规模立体匹配
- 比较好的立体匹配ppt
- 立体匹配图片集数量不多
- 双目立体匹配图片集,很多经典图片
- 立体匹配双目视差图像对
- A Non-Local Cost Aggregation Method for Stereo
- 知识图谱_数据融合 (DataMatching)
- 传统census立体匹配算法.zip
- 立体匹配包括基本矩阵,极线校正,
- 立体匹配实验素材2
- ADCensus.zip
- A Non-Local Aggregation Method Stereo Matching相
- SAD、BM、SGBM算法获得视差图
- 基于VS2017+opencv3.4.3的立体匹配SGBM与
- 图像立体匹配和三维重建软件
- 立体匹配ADCensus
- A Non-Local Cost Aggregation Method for Stereo
- ygz-stereo-inertial.tar
- 很经典的几种立体匹配算法源代码,
- 双目立体匹配测试数据集Middlebury St
- 并行立体匹配论文合集
- ELAS算法原文+库文件+VS2015x64实现
- opencv立体匹配算法BM+SGBM+VAR运行官方立
- 基于图像分割的立体匹配论文合集
评论
共有 条评论