亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mysegplugin.cpp

?? 3DMed Plugins 是MITK的配套例子
?? CPP
字號:
// MySegPlugin.cpp: implementation of the CMySegPlugin class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "SegPlugin.h"
#include "MySegPlugin.h"

//PluginsSDK頭文件
#include "medVolume.h"

//對話框頭文件
#include "DialogParameter.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
IMPLEMENT_SEGMENTATION(CMySegPlugin, "My Segmentation Plugin")

CMySegPlugin::CMySegPlugin()
{

}

CMySegPlugin::~CMySegPlugin()
{

}

bool CMySegPlugin::Show(void)
{
	//MFC的規定,必須先調用這個宏.
	AFX_MANAGE_STATE(AfxGetStaticModuleState());

	//彈出域值選擇對話框.
	CDialogParameter paraDialog;
	paraDialog.SetLowThre(0.0f);
	paraDialog.SetHighThre(255.0f);

	if(paraDialog.DoModal() == IDOK)
	{
		//作實際的域值分割工作.
		return this->doSegmentation(paraDialog.GetLowThre(), 
			                        paraDialog.GetHighThre());
	}

	return false;
}

template <class T>
void t_ExecuteSegmentation(T *inData, unsigned char *outData, 
						   medVolume *inVolume,
						   float lowThresh, float highThresh)
{
	//得到圖像的一些屬性信息.
	int imageWidth = inVolume->GetWidth();
	int imageHeight = inVolume->GetHeight();
	int imageNum = inVolume->GetImageNum();
	int i, j, k;

	//循環遍歷整個數據.
	for(k = 0; k < imageNum; k++)
	{
		for(j = 0; j < imageHeight; j++)
		{
			for(i = 0; i < imageWidth; i++)
			{
				//如果數據值在指定的域值范圍內,
				//則輸出的數據二值化為255.
				if(*inData >= lowThresh && *inData <= highThresh)
				{
					*outData = 255;
				}
				//否則為0.
				else
				{
					*outData = 0;
				}

				//輸入數據和輸出數據指針前移.
				inData++;
				outData++;
			}
		}
	}		
}

bool CMySegPlugin::doSegmentation(float lowThre, float highThre)
{
	if(lowThre >= highThre)
		return false;

	medVolume *inVolume = this->GetInput();	

	if(inVolume == NULL)
	{
		AfxMessageBox("輸入數據為空");
		return false;
	}

	if(inVolume->GetNumberOfChannel() != 1)
	{
		AfxMessageBox("對不起,只支持單通道的數據");
		return false;
	}	

	//生成輸出數據(即分割后數據).
	m_OutData = new medVolume;
	
	//設置分割后數據的屬性,
	//和原始數據大部分一致.
	medVolume *outVolume = this->GetOutput();
	outVolume->SetWidth(inVolume->GetWidth());
	outVolume->SetHeight(inVolume->GetHeight());
	outVolume->SetImageNum(inVolume->GetImageNum());
	outVolume->SetSpacingX(inVolume->GetSpacingX());
	outVolume->SetSpacingY(inVolume->GetSpacingY());
	outVolume->SetSpacingZ(inVolume->GetSpacingZ());	
	outVolume->SetNumberOfChannel(inVolume->GetNumberOfChannel());

	//分割后的數據為二值數據,
	//因此這里將數據類型設置為unsigned char(8bit).
	outVolume->SetDataType(MED_UNSIGNED_CHAR);

	//為分割后的數據分配實際內存.
	unsigned char *outData = (unsigned char*) outVolume->Allocate();

	//得到輸入數據的內存指針.
	void *inData = inVolume->GetRawData();	

	//根據輸入數據的類型,
	//使用模板函數來完成實際分割過程.
	switch(inVolume->GetDataType())
	{
		case MED_CHAR:
			t_ExecuteSegmentation((char*) inData, outData, inVolume, 
								  lowThre, highThre);
			break;

		case MED_UNSIGNED_CHAR:
			t_ExecuteSegmentation((unsigned char*) inData, outData, 
				                  inVolume, lowThre, highThre);
			break;	

		case MED_SHORT:
			t_ExecuteSegmentation((short*) inData, outData, inVolume, 
								  lowThre, highThre);
			break;		

		case MED_UNSIGNED_SHORT:
			t_ExecuteSegmentation((unsigned short*) inData, outData,
				                  inVolume, lowThre, highThre);
			break;	

		case MED_INT:
			t_ExecuteSegmentation((int*) inData, outData, inVolume, 
								  lowThre, highThre);
			break;
		
		case MED_UNSIGNED_INT:
			t_ExecuteSegmentation((unsigned int*) inData, outData,
				                  inVolume, lowThre, highThre);
			break;		

		case MED_LONG:
			t_ExecuteSegmentation((long*) inData, outData, inVolume, 
								  lowThre, highThre);
			break;	

		case MED_UNSIGNED_LONG:
			t_ExecuteSegmentation((unsigned long*) inData, outData,
				                  inVolume, lowThre, highThre);
			break;			

		case MED_FLOAT:
			t_ExecuteSegmentation((float*) inData, outData, inVolume, 
								  lowThre, highThre);
			break;			

		case MED_DOUBLE:
			t_ExecuteSegmentation((double*) inData, outData, inVolume, 
								  lowThre, highThre);
			break;	

		default:
			AfxMessageBox("不支持的數據類型!");
			return false;
	}

	return true;
	
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久国产精品麻豆ai换脸| 99久久精品国产精品久久| 亚洲免费资源在线播放| 亚洲国产精品成人综合色在线婷婷| 精品久久久久久无| 精品国产伦理网| 久久精品视频一区| 国产色综合一区| 亚洲欧洲色图综合| 亚洲网友自拍偷拍| 免费成人在线影院| 国产一区二区在线观看免费| 国产宾馆实践打屁股91| 成人国产亚洲欧美成人综合网| 国产91精品久久久久久久网曝门| 北条麻妃一区二区三区| 91片在线免费观看| 欧美日产国产精品| 久久美女高清视频| 亚洲视频一区二区在线观看| 日韩毛片视频在线看| 亚洲国产一二三| 精品一区二区三区视频在线观看| 国产传媒日韩欧美成人| 91视频com| 日韩久久免费av| 中文字幕中文乱码欧美一区二区| 亚洲一区二区高清| 极品少妇一区二区| 99re6这里只有精品视频在线观看| 在线精品观看国产| 久久综合久久综合九色| 亚洲日本在线观看| 麻豆精品视频在线观看免费| 国产大片一区二区| 91精品国产麻豆| 国产精品久久久久影视| 日本不卡一区二区三区高清视频| 国产精品中文欧美| 欧美性受极品xxxx喷水| 精品国产成人在线影院| 亚洲另类色综合网站| 国产真实乱对白精彩久久| 成人精品一区二区三区中文字幕 | 蜜臀久久久久久久| 成人av影视在线观看| 日韩一区二区三区在线| 国产精品国产精品国产专区不蜜| 婷婷夜色潮精品综合在线| 不卡视频免费播放| 精品国产百合女同互慰| 午夜精品123| 99re热视频精品| 国产欧美日韩综合精品一区二区| 一区二区三区高清在线| 成人自拍视频在线观看| 欧美精品一区二区三区蜜桃视频| 亚洲五码中文字幕| 一本久久精品一区二区| 中文字幕乱码一区二区免费| 寂寞少妇一区二区三区| 欧美一级夜夜爽| 香蕉久久夜色精品国产使用方法| 99精品偷自拍| 国产精品国产三级国产aⅴ入口| 国产自产v一区二区三区c| 欧美精品久久一区二区三区| 亚洲人亚洲人成电影网站色| 成年人国产精品| 国产精品日产欧美久久久久| 国产毛片精品视频| 精品国产自在久精品国产| 老汉av免费一区二区三区| 51午夜精品国产| 日本亚洲天堂网| 91麻豆精品国产| 免费精品视频在线| 日韩欧美国产综合| 韩国女主播一区| 国产亚洲欧美日韩俺去了| 国产麻豆精品在线观看| 精品国产乱码久久久久久蜜臀| 日韩电影在线观看网站| 51久久夜色精品国产麻豆| 奇米影视一区二区三区| 日韩精品一区在线观看| 激情综合网最新| 国产夜色精品一区二区av| 成人国产一区二区三区精品| 亚洲色图一区二区| 欧美日韩精品高清| 九九国产精品视频| 国产亚洲欧美一级| 色偷偷一区二区三区| 一区二区三区四区国产精品| 欧美三级一区二区| 久久精品国产亚洲高清剧情介绍| 日韩欧美一二区| 国产麻豆精品在线| 亚洲视频在线一区| 日韩欧美的一区二区| 国产精品一区二区在线看| 最新国产精品久久精品| 欧美亚洲愉拍一区二区| 日韩精品久久久久久| 国产欧美视频在线观看| 欧美亚洲综合网| 精品一区二区在线视频| 国产精品成人午夜| 欧美一级欧美一级在线播放| 国产高清不卡一区| 亚洲国产日韩一区二区| 久久久www免费人成精品| 日本道精品一区二区三区 | 另类小说视频一区二区| 国产精品免费久久| 欧美一级久久久久久久大片| 成人一道本在线| 天堂在线亚洲视频| 中文一区在线播放| 日韩精品中文字幕一区| 欧美中文字幕久久 | 中文字幕一区在线| 欧美一区午夜视频在线观看| 99久久伊人精品| 久久99久久99| 亚洲va国产天堂va久久en| 国产日产欧美精品一区二区三区| 欧美日韩精品系列| 91视频在线看| 本田岬高潮一区二区三区| 国产一区久久久| 视频一区二区三区中文字幕| 中文字幕制服丝袜成人av| 精品少妇一区二区三区日产乱码| 欧美午夜不卡视频| 色婷婷亚洲精品| av电影天堂一区二区在线观看| 激情欧美日韩一区二区| 午夜精品福利在线| 午夜精品久久久久影视| 亚洲激情图片一区| 1024亚洲合集| 国产精品福利一区二区三区| 久久久另类综合| 久久亚洲春色中文字幕久久久| 欧美一区二区三区精品| 欧美伦理电影网| 欧美日韩电影在线播放| 欧美日韩亚洲国产综合| 色欧美片视频在线观看在线视频| 成人黄色片在线观看| www.亚洲国产| 91在线观看高清| 色综合天天综合网国产成人综合天| www.欧美日韩| 91一区在线观看| 在线看不卡av| 欧美精品久久99久久在免费线 | 日韩vs国产vs欧美| 日韩av电影免费观看高清完整版 | 偷窥少妇高潮呻吟av久久免费 | 91精品国产综合久久久久| 欧洲国内综合视频| 欧美性受xxxx黑人xyx性爽| 欧美三级日韩在线| 欧美精品乱码久久久久久| 5月丁香婷婷综合| 久久麻豆一区二区| 1024精品合集| 国产在线精品一区二区不卡了| 久久爱www久久做| 成人激情图片网| 欧美探花视频资源| 日韩欧美一级在线播放| 国产清纯在线一区二区www| 18成人在线观看| 香蕉影视欧美成人| 精品中文字幕一区二区| 国产精一区二区三区| 91丝袜高跟美女视频| 91精品久久久久久蜜臀| 国产亚洲欧美日韩在线一区| 亚洲欧美激情插| 美女视频黄免费的久久 | 日韩国产成人精品| 国产风韵犹存在线视精品| 在线观看亚洲专区| 精品国产91乱码一区二区三区| 国产精品久久久久三级| 石原莉奈一区二区三区在线观看| 国产美女精品在线| 欧美日韩一区二区三区四区| 欧美精品一区二| 亚洲成av人影院在线观看网| 国产乱妇无码大片在线观看| 欧美视频一区二区三区四区| 国产三级一区二区三区| 日韩成人av影视| 色欧美片视频在线观看|