资源简介

A Non-Local Cost Aggregation Method for Stereo Matching 完整代码

资源截图

代码片段和文件信息

/*
 * ctmf.c - Constant-time median filtering
 * Copyright (C) 2006  Simon Perreault
 *
 * Reference: S. Perreault and P. Hébert “Median Filtering in Constant Time“
 * IEEE Transactions on Image Processing September 2007.
 *
 * This program has been obtained from http://nomis80.org/ctmf.html. No patent
 * covers this program although it is subject to the following license:
 *
 *  This program 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
 *  (at your option) any later version.
 *
 *  This program 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 this program.  If not see .
 *
 * Contact:
 *  Laboratoire de vision et systèmes numériques
 *  Pavillon Adrien-Pouliot
 *  Université Laval
 *  Sainte-Foy Québec Canada
 *  G1K 7P4
 *
 *  perreaul@gel.ulaval.ca
 */

/* Standard C includes */
#include 
#include 
#include 
#include 

/* Type declarations */
#ifdef _MSC_VER
#include setsd.h>
typedef UINT8 uint8_t;
typedef UINT16 uint16_t;
typedef UINT32 uint32_t;
#pragma warning( disable: 4799 )
#else
#include 
#endif

/* Intrinsic declarations */
#if defined(__SSE2__) || defined(__MMX__)
#if defined(__SSE2__)
#include 
#elif defined(__MMX__)
#include 
#endif
#if defined(__GNUC__)
#include 
#elif defined(_MSC_VER)
#include 
#endif
#elif defined(__ALTIVEC__)
#include 
#endif

/* Compiler peculiarities */
#if defined(__GNUC__)
#include 
#define inline __inline__
#define align(x) __attribute__ ((aligned (x)))
#elif defined(_MSC_VER)
#define inline __inline
#define align(x) __declspec(align(x))
#else
#define inline
#define align(x)
#endif

#ifndef MIN
#define MIN(ab) ((a) > (b) ? (b) : (a))
#endif

#ifndef MAX
#define MAX(ab) ((a) < (b) ? (b) : (a))
#endif

/**
 * This structure represents a two-tier histogram. The first tier (known as the
 * “coarse“ level) is 4 bit wide and the second tier (known as the “fine“ level)
 * is 8 bit wide. Pixels inserted in the fine level also get inserted into the
 * coarse bucket designated by the 4 MSBs of the fine bucket value.
 *
 * The structure is aligned on 16 bytes which is a prerequisite for SIMD
 * instructions. Each bucket is 16 bit wide which means that extra care must be
 * taken to prevent overflow.
 */
typedef struct align(16)
{
    uint16_t coarse[16];
    uint16_t fine[16][16];
} Histogram;

/**
 * HOP is short for Histogram OPeration. This macro makes an operation \a op on
 * histogram \a h for pixel value \a x. It takes care of handling

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        921  2011-08-31 10:08  A Non-Local Cost Aggregation Method for Stereo Matching\Backup\qx_nonlocal_cost_aggregation.sln

     文件      15569  2010-10-22 16:35  A Non-Local Cost Aggregation Method for Stereo Matching\ctmf.c

     文件        265  2012-02-22 22:21  A Non-Local Cost Aggregation Method for Stereo Matching\ctmf.h

     文件      16785  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\ctmf.obj

     文件     130589  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\example.obj

     文件     208274  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_basic.obj

     文件     175383  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_mst_kruskals_image.obj

     文件       4490  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlo.7BE6E10D.tlog\cl.command.1.tlog

     文件     102744  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlo.7BE6E10D.tlog\CL.read.1.tlog

     文件       2628  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlo.7BE6E10D.tlog\CL.write.1.tlog

     文件       2978  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlo.7BE6E10D.tlog\link.command.1.tlog

     文件       6388  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlo.7BE6E10D.tlog\link.read.1.tlog

     文件       1056  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlo.7BE6E10D.tlog\link.write.1.tlog

     文件        171  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlo.7BE6E10D.tlog\qx_nonlocal_cost_aggregation.lastbuildstate

     文件     156672  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlocal_cost_aggregation.exe

     文件     611512  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlocal_cost_aggregation.ilk

     文件       6786  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlocal_cost_aggregation.log

     文件     155266  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlocal_cost_aggregation.obj

     文件    1110016  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_nonlocal_cost_aggregation.pdb

     文件     220354  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_ppm.obj

     文件     135091  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\qx_tree_filter.obj

     文件     920576  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\vc120.idb

     文件     479232  2016-07-07 13:42  A Non-Local Cost Aggregation Method for Stereo Matching\Debug\vc120.pdb

     文件       2222  2012-05-09 20:16  A Non-Local Cost Aggregation Method for Stereo Matching\example.cpp

     文件      18434  2012-05-09 18:25  A Non-Local Cost Aggregation Method for Stereo Matching\qx_basic.cpp

     文件      13726  2012-05-09 18:25  A Non-Local Cost Aggregation Method for Stereo Matching\qx_basic.h

     文件       9353  2012-05-09 18:36  A Non-Local Cost Aggregation Method for Stereo Matching\qx_mst_kruskals_image.cpp

     文件       2390  2012-05-09 20:01  A Non-Local Cost Aggregation Method for Stereo Matching\qx_mst_kruskals_image.h

     文件       5708  2012-06-08 20:36  A Non-Local Cost Aggregation Method for Stereo Matching\qx_nonlocal_cost_aggregation.cpp

     文件       2000  2012-06-08 20:18  A Non-Local Cost Aggregation Method for Stereo Matching\qx_nonlocal_cost_aggregation.h

............此处省略19个文件信息

评论

共有 条评论