⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 summedareatable.cpp

📁 3D reconstruction, medical image processing from colons, using intel image processing for based clas
💻 CPP
字号:
// SummedAreaTable.cpp : implementation file////////////////////////////////////////////////////////////////////////////	Title: Summed area table to classify blocks of voxels faster////////////////////////////////////////////////////////////////////////////	Author: H.W.Kye//	138-dong 417-ho Seoul National University//	San 56-1 Shinlim-dong Kwanak-gu Seoul, Korea//	Email. ////	Date	://	Update	:////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////	include//////////////////////////////////////////////////////////////////////#include "StdAfx.h"#include <xmmintrin.h>#include <malloc.h>#include "SummedAreaTable.h"////////////////////////////////////////////////////////////////////////	declaration//////////////////////////////////////////////////////////////////////static const int CACHESIZE=32;//*********************************************// Sn = A0 + A1 + ... + An		栏肺 沥狼茄促.// Al + ... + Am = Sm - S(l-1)	栏肺 荤侩茄促.// A0 + ... + Am = Sm - S(-1)	老 荐 乐促.// def. S[-1] = 0				栏肺 沥狼茄促.//*********************************************RxSummedAreaTable::RxSummedAreaTable(){	m_pTable = NULL;	m_iMin = m_iMax = 0;}RxSummedAreaTable::~RxSummedAreaTable(){	DestroyTable();}//// S[-1]=0 阑 父甸扁 困秦 pointer甫 窍唱 颗变促.//BOOL RxSummedAreaTable::CreateTable(int iMin, int iMax){	ASSERT(iMin < iMax);	DestroyTable();	m_iMin = iMin;	m_iMax = iMax;	m_iSize = iMax - iMin + 1 + 1;	m_pTable = (int*)_mm_malloc(m_iSize * sizeof(int), CACHESIZE);	memset(m_pTable, 0, m_iSize * sizeof(int));	m_pTable[0] = 0;	m_pTable++;	return (m_pTable != NULL);}//// S[-1]阑 绊妨秦辑 家芭窃//BOOL RxSummedAreaTable::DestroyTable(){	if(m_pTable) {		m_pTable--;		_mm_free(m_pTable);		m_pTable = NULL;	}	return TRUE;}//// __m128狼 霉锅掳 alpha蔼阑 扁霖栏肺 1/0阑 沥窃//BOOL RxSummedAreaTable::MakeTable(const __m128 *pSrcTable){	ASSERT(pSrcTable != NULL);	// clear table	memset(m_pTable, 0, m_iSize * sizeof(int));	// make table	__m128 vZero = _mm_setzero_ps();	int result;	result = _mm_comigt_ss (*pSrcTable, vZero);	m_pTable[0] = result;	for (int i = 1; i < m_iSize; i++) {		result = _mm_comigt_ss (pSrcTable[i], vZero);		m_pTable[i] = m_pTable[i-1] + result;	}	return TRUE;}int RxSummedAreaTable::LookUp(int iMax, int iMin){	int p1 = iMax - m_iMin;	int p2 = iMin - m_iMin - 1;	int iRetval = m_pTable[p1] - m_pTable[p2];	return iRetval;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -