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

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

?? imuifilter.m

?? 這是采用Matlab編寫的車牌識別程序,好不好下了就知
?? M
字號:
function varargout = imuifilter(varargin)
%IMUIFILTER
%    Member of IMUI
%    Kotaimen.C, 2002/05 - 2002/07, All Rights Reserved

if ~isstr(varargin{1})
	Action = '::::BuildGUI';

	ud.hdlFCN = varargin{2};

	P = feval(ud.hdlFCN);

	CX = varargin{1};

	if P.ParameterNumber == 0
		varargout{1} = feval(ud.hdlFCN, CX);
		return
	end
	CPREV = thumb(CX);


else
	ud = get(gcf, 'UserData');
	Action = varargin{1};
end

switch Action
case '::::BuildGUI'

	h_integer 	= 8 + 18 + 4 + 16;
	h_single 	= 8 + 18 + 4 + 16;
	h_check 	= 8 + 20;
	h_popup 	= 8 + 20;
	h_strel		= 8 + 20;

	n_integer 	= 0;
	n_single	= 0;
	n_check		= 0;
	n_popup		= 0;
	n_strel		= 0;
	for i = 1 : P.ParameterNumber
		switch lower(P.Parameters{i}.Style)
		case 'integer'
			n_integer = n_integer + 1;
		case 'single'
			n_single = n_single + 1;
		case 'check'
			n_check = n_check + 1;
		case 'popup'
			n_popup = n_popup + 1;
		case 'strel'
			n_strel = n_strel + 1;
		end
	end
	h_controls = ...
		n_integer 	* h_integer + ...
		n_single 	* h_single + ...
		n_check 	* h_check + ...
		n_popup 	* h_popup + ...
		n_strel		* h_strel + ...
		8 + P.ParameterNumber * 8 ;
	if h_controls > 364
		h_fig = h_controls;
	else
		h_fig = 308;
	end

	ud.fig = dialog( ...
		'Name',				P.FilterName, ...
		'Position',			[0, 0, 408, h_fig], ...
		'HandleVisibility', 'on', ...
		'Visible',			'off', ...
		'WindowStyle',		'modal');

	h_base = h_fig - 8;
	ud.hdlParameters{i} = ones(P.ParameterNumber, 1);
	for i = 1 : P.ParameterNumber
		switch lower(P.Parameters{i}.Style)
		case 'integer'
			uicontrol( ...
				'Style',			'text', ...
				'HorizontalAlignment', 'left', ...
				'Units',			'pixel', ...
				'Position',			[8, h_base - h_integer + 20 , 128, 18 ], ...
				'String',			[P.Parameters{i}.Name, ' :'], ...
				'Tag',				'');
			hdlText = uicontrol( ...
				'Style',			'text', ...
				'HorizontalAlignment', 'right', ...
				'Units',			'pixel', ...
				'Position',			[200, h_base - h_integer + 20 , 64, 18 ], ...
				'FontName',			'Courier New', ...
				'FontSize',			9, ...
				'String',			num2str( round(P.Parameters{i}.DefaultValue) ), ...
				'Tag',				'');
			ud.hdlParameters{i} = uicontrol( ...
				'Style',			'slider', ...
				'Units',			'pixel', ...
				'Position',			[8, h_base - h_integer , 256, 16 ], ...
				'Max',				P.Parameters{i}.Max, ...
				'Min',				P.Parameters{i}.Min, ...
				'SliderStep',		[P.Parameters{i}.SmallStep / (P.Parameters{i}.Max - P.Parameters{i}.Min), ...
									P.Parameters{i}.LargeStep / (P.Parameters{i}.Max - P.Parameters{i}.Min)], ...
				'Value',			P.Parameters{i}.DefaultValue, ...
				'Tag',				'::::Parameter', ...
				'Callback',			'imuifilter(''::::cb_Parameter'')', ...
				'UserData',			struct( ...
										'Style',	'integer', ...
										'hdlText',	hdlText, ...
										'DefaultValue', P.Parameters{i}.DefaultValue ...
										) );
			h_base = h_base - h_integer - 8;
		case 'single'
			uicontrol( ...
				'Style',			'text', ...
				'HorizontalAlignment', 'left', ...
				'Units',			'pixel', ...
				'Position',			[8, h_base - h_integer + 20 , 128, 18 ], ...
				'String',			[P.Parameters{i}.Name, ' :'], ...
				'Tag',				'');
			hdlText = uicontrol( ...
				'Style',			'text', ...
				'HorizontalAlignment', 'right', ...
				'Units',			'pixel', ...
				'Position',			[200, h_base - h_integer + 20 , 64, 18 ], ...
				'FontName',			'Courier New', ...
				'FontSize',			9, ...
				'String',			sprintf( '%.2f', P.Parameters{i}.DefaultValue ), ...
				'Tag',				'');
			ud.hdlParameters{i} = uicontrol( ...
				'Style',			'slider', ...
				'Units',			'pixel', ...
				'Position',			[8, h_base - h_integer , 256, 16 ], ...
				'Max',				P.Parameters{i}.Max, ...
				'Min',				P.Parameters{i}.Min, ...
				'SliderStep',		[P.Parameters{i}.SmallStep / (P.Parameters{i}.Max - P.Parameters{i}.Min), ...
									P.Parameters{i}.LargeStep / (P.Parameters{i}.Max - P.Parameters{i}.Min)], ...
				'Value',			P.Parameters{i}.DefaultValue, ...
				'Tag',				'::::Parameter', ...
				'Callback',			'imuifilter(''::::cb_Parameter'')', ...
				'UserData',			struct( ...
										'Style',	'single', ...
										'hdlText',	hdlText, ...
										'DefaultValue', P.Parameters{i}.DefaultValue ...
										) );
			h_base = h_base - h_single - 8;
		case 'check'
			ud.hdlParameters{i} = uicontrol( ...
				'Style',			'check', ...
				'Units',			'pixel', ...
				'Position',			[96, h_base - h_check , 160, 20 ], ...
				'String',			P.Parameters{i}.Name, ...
				'Value',			P.Parameters{i}.DefaultValue, ...
				'Tag',				'::::Parameter', ...
				'Callback',			'imuifilter(''::::cb_Parameter'')', ...
				'UserData',			struct( ...
										'Style',	'check', ...
										'DefaultValue', P.Parameters{i}.DefaultValue ...
										) );
			h_base = h_base - h_check - 8;
		case 'popup'
			uicontrol( ...
				'Style',			'text', ...
				'HorizontalAlignment', 'left', ...
				'Units',			'pixel', ...
				'Position',			[8, h_base - h_popup , 88, 18 ], ...
				'String',			[P.Parameters{i}.Name, ' :'], ...
				'Tag',				'');
			ud.hdlParameters{i} = uicontrol( ...
				'Style',			'popupmenu', ...
				'Units',			'pixel', ...
				'BackgroundColor',	'w', ...
				'Position',			[96, h_base - h_popup , 160, 20 ], ...
				'String',			P.Parameters{i}.Items, ...
				'Value',			P.Parameters{i}.DefaultValue, ...
				'Tag',				'::::Parameter', ...
				'Callback',			'imuifilter(''::::cb_Parameter'')', ...
				'UserData',			struct( ...
										'Style',	'popup', ...
										'DefaultValue', P.Parameters{i}.DefaultValue ...
										) );
			h_base = h_base - h_popup - 8;
		case 'strel'
			uicontrol( ...
				'Style',			'text', ...
				'HorizontalAlignment', 'left', ...
				'Units',			'pixel', ...
				'Position',			[8, h_base - h_popup , 128, 18 ], ...
				'String',			[P.Parameters{i}.Name, ' :'], ...
				'Tag',				'');
			ud.hdlParameters{i} = uicontrol( ...
				'Style',			'pushbutton', ...
				'Units',			'pixel', ...
				'Position',			[129, h_base - h_popup , 128, 20 ], ...
				'String',			sprintf('%d*%d SE...',size(getnhood(P.Parameters{i}.DefaultValue)) ), ...
				'Tag',				'::::Parameter', ...
				'Callback',			'imuifilter(''::::cb_Parameter'')', ...
				'UserData',			struct( ...
										'Style',	'strel', ...
										'DefaultValue', P.Parameters{i}.DefaultValue, ...
										'SE',		P.Parameters{i}.DefaultValue ...
										) );
			h_base = h_base - h_strel - 8;
		end
	end
	%%%%Default UI Controls
	ud.axePreview = axes( ...
		'Units',			'pixel', ...
		'Position',			[272, h_fig - 136,  128, 128]);
	ud.imgPreview = imshow(CPREV, 'notruesize');
	set(ud.axePreview, ...
		'Visible',			'off', ...
		'DrawMode',			'fast')
	set(ud.imgPreview, ...
		'UserData', 		CPREV, ...
		'CDataMapping', 	'scaled', ...
		'EraseMode',		'xor')
	ud.chkPreview = uicontrol( ...
		'Style',			'check', ...
		'Units',			'pixel', ...
		'Position',			[304, h_fig - 136 - 28  , 64, 20 ], ...
		'Value',			0, ...
		'String',			'Preview', ...
		'Callback',			'imuifilter(''::::cb_chkPreview'')');
	ud.btnApply  = uicontrol( ...
		'Style',			'pushbutton', ...
		'Units',			'pixel', ...
		'Position',			[299, h_fig - 164 - 48,  75, 24 ], ...
		'FontWeight',		'bold', ...
		'String',			'Apply', ...
		'Callback',			'imuifilter(''::::cb_btnApply'')');
	ud.btnCancel  = uicontrol( ...
		'Style',			'pushbutton', ...
		'Units',			'pixel', ...
		'Position',			[299, h_fig - 212 - 36,  75, 24 ], ...
		'FontWeight',		'bold', ...
		'String',			'Cancel', ...
		'Callback',			'imuifilter(''::::cb_btnCancel'')');
	ud.btnReset  = uicontrol( ...
		'Style',			'pushbutton', ...
		'Units',			'pixel', ...
		'Position',			[299, h_fig - 248 - 48,  75, 24 ], ...
		'String',			'Reset', ...
		'Callback',			'imuifilter(''::::cb_btnReset'')');

	movegui(ud.fig, 'center')
	set(ud.fig, ...
		'Visible',			'on', ...
		'UserData',			ud, ...
		'HandleVisibility', 'callback', ...
		'Colormap',			gray, ...
		'CloseRequestFcn', 'imuifilter(''::::cb_btnCancel'')')

	waitfor(ud.fig, 'Visible', 'off')

	if strcmp(get(ud.btnApply, 'UserData'), 'apply')
		FCNPARA = {};
		for i = 1 : length(ud.hdlParameters)
			pud = get(ud.hdlParameters{i}, 'UserData');
			switch lower(pud.Style)
			case 'integer'
				FCNPARA{i} = round(get(ud.hdlParameters{i}, 'Value'));
			case 'single'
				FCNPARA{i} = get(ud.hdlParameters{i}, 'Value');
			case 'check'
				FCNPARA{i} = get(ud.hdlParameters{i}, 'Value');
			case 'popup'
				FCNPARA{i} = get(ud.hdlParameters{i}, 'Value');
			case 'strel'
				FCNPARA{i} = pud.SE;
			end
		end
		h = waitfig(['Applying "', P.FilterName, '"']);

		varargout{1} = feval(ud.hdlFCN, CX, FCNPARA);

		delete(h)
	else
		varargout{1} = -1;
	end

	delete(ud.fig)
case '::::cb_Parameter'
	pud = get(gcbo, 'UserData');

	switch lower(pud.Style)
	case 'integer'
		set(pud.hdlText, ...
			'String',	num2str(round(get(gcbo, 'Value'))) )
	case 'single'
		set(pud.hdlText, ...
			'String',	sprintf('%.2f', get(gcbo, 'Value')) )
	case 'check'

	case 'popup'

	case 'strel'
		NewSE = imuistrel;
		if isa(NewSE, 'strel')
			pud.SE = NewSE;
			set(gcbo, 'String', ...
				sprintf('%d*%d SE...',size(getnhood(NewSE)) ) );
		end
	end
	set(gcbo,'UserData', pud)
	if get(ud.chkPreview, 'Value')
		UpdatePreview(ud)
	end
case '::::cb_btnReset'
	for i = 1 : length(ud.hdlParameters)
		pud = get(ud.hdlParameters{i}, 'UserData');
		switch lower(pud.Style)
		case 'integer'
			set(ud.hdlParameters{i}, 'Value', pud.DefaultValue)
			set(pud.hdlText, ...
				'String',	num2str(round(get(ud.hdlParameters{i}, 'Value'))) )
		case 'single'
			set(ud.hdlParameters{i}, 'Value', pud.DefaultValue)
			set(pud.hdlText, ...
				'String',	sprintf('%.2f', get(ud.hdlParameters{i}, 'Value')) )
		case 'check'
			set(ud.hdlParameters{i}, 'Value', pud.DefaultValue)
		case 'popup'
			set(ud.hdlParameters{i}, 'Value', pud.DefaultValue)
		case 'strel'
			pud.SE = pud.DefaultValue;
			set(ud.hdlParameters{i}, 'String', ...
				sprintf('%d*%d SE...',size(getnhood(pud.DefaultValue)) ) );
		end
		set(ud.hdlParameters{i},'UserData', pud)
	end
	set(ud.chkPreview, 'Value', 0)
	set(ud.imgPreview, 'CData', get(ud.imgPreview, 'UserData') )
case '::::cb_chkPreview'
	if get(ud.chkPreview, 'Value')
		UpdatePreview(ud)
	else
		set(ud.imgPreview, 'CData', get(ud.imgPreview, 'UserData') )
	end
case '::::cb_btnApply'
	set(ud.btnApply, 'UserData', 'apply')
	set(ud.fig, 'Visible', 'off')
case '::::cb_btnCancel'
	set(ud.btnApply, 'UserData', 'cancel')
	set(ud.fig, 'Visible', 'off')
end
%========================================================================
function UpdatePreview(ud)
FCNPARA = {};
for i = 1 : length(ud.hdlParameters)
	pud = get(ud.hdlParameters{i}, 'UserData');
	switch lower(pud.Style)
	case 'integer'
		FCNPARA{i} = round(get(ud.hdlParameters{i}, 'Value'));
	case 'single'
		FCNPARA{i} = get(ud.hdlParameters{i}, 'Value');
	case 'check'
		FCNPARA{i} = get(ud.hdlParameters{i}, 'Value');
	case 'popup'
		FCNPARA{i} = get(ud.hdlParameters{i}, 'Value');
	case 'strel'
		FCNPARA{i} = pud.SE;
	end
end
set(ud.btnApply, 'Enable', 'off', 'String', 'Busy')
CX = get(ud.imgPreview, 'UserData');
CX = feval(ud.hdlFCN, CX, FCNPARA);
if isbw(CX)
	CX = grayxform(CX, [0, ones(1, 255)]);
end
set(ud.imgPreview, 'CData', CX)
set(ud.btnApply, 'Enable', 'on', 'String', 'Apply')

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99在线精品一区二区三区| 日韩一区二区免费电影| 日韩综合小视频| 久久国产精品99精品国产| 国产成人精品三级麻豆| 欧美亚洲国产bt| 中文字幕乱码久久午夜不卡| 人人精品人人爱| 91一区二区在线| 国产亚洲人成网站| 日韩不卡免费视频| 欧美日韩在线电影| 亚洲女性喷水在线观看一区| 国产伦精品一区二区三区免费 | 裸体一区二区三区| 欧美在线免费播放| 最新日韩在线视频| 成人午夜视频网站| 国产嫩草影院久久久久| 久久精工是国产品牌吗| 91精品麻豆日日躁夜夜躁| 亚洲综合在线五月| 色综合av在线| 亚洲色图欧美在线| 成人ar影院免费观看视频| 久久久亚洲高清| 黄色日韩三级电影| 欧美r级在线观看| 久久精品免费观看| 欧美电影免费观看高清完整版| 一区二区三区久久| 欧美私人免费视频| 亚洲国产视频在线| 精品1区2区3区| 亚洲v精品v日韩v欧美v专区| 欧美哺乳videos| 欧美卡1卡2卡| 中文在线免费一区三区高中清不卡| 看片的网站亚洲| 国产精品久久久久天堂| 国产一区二区三区综合| 国产日韩欧美a| 成人av资源在线| 亚洲欧美日韩国产综合在线 | 久久婷婷国产综合国色天香| 九九**精品视频免费播放| 精品国产乱码久久久久久久| 国产福利一区二区三区在线视频| 久久久久国产精品麻豆| 成人av资源网站| 亚洲精品老司机| 777奇米四色成人影色区| 九九国产精品视频| 国产精品视频你懂的| 色婷婷一区二区三区四区| 亚洲午夜久久久| 欧美大片国产精品| 成人精品亚洲人成在线| 亚洲一卡二卡三卡四卡无卡久久 | 91精品国产综合久久久蜜臀图片 | 国产乱妇无码大片在线观看| 国产欧美日韩卡一| 色呦呦一区二区三区| 午夜久久久久久久久| 精品国产91久久久久久久妲己| 成人黄色国产精品网站大全在线免费观看| 综合av第一页| 精品国内二区三区| 97国产精品videossex| 国产不卡在线一区| 亚洲色图制服诱惑| 欧美成人a在线| 不卡的av网站| 久久99精品久久久| 亚洲男女毛片无遮挡| 日韩亚洲欧美高清| 99国产精品久久久久久久久久久| 午夜激情久久久| 中文字幕 久热精品 视频在线| 欧美精品精品一区| av不卡在线播放| 九色综合国产一区二区三区| 亚洲欧美日韩在线播放| 久久蜜桃av一区二区天堂| 欧洲国产伦久久久久久久| 国产乱码精品一区二区三区忘忧草 | 日本亚洲免费观看| 亚洲色图欧洲色图| 国产日韩精品一区二区浪潮av | 亚洲一区二区三区在线播放| 久久久久久久综合日本| 欧美日韩国产综合视频在线观看| 不卡视频在线观看| 久久国产麻豆精品| 日本麻豆一区二区三区视频| 亚洲免费看黄网站| 国产精品日日摸夜夜摸av| 精品少妇一区二区| 69堂成人精品免费视频| 日本韩国欧美在线| 91丨九色丨尤物| 粉嫩一区二区三区性色av| 色一情一伦一子一伦一区| 日韩视频一区二区三区| 久国产精品韩国三级视频| 午夜激情一区二区| 日韩国产精品久久久久久亚洲| 中文字幕日韩欧美一区二区三区| 日本一区二区三区国色天香 | 日韩一级二级三级| 欧美性视频一区二区三区| 色就色 综合激情| 97se亚洲国产综合自在线| 成人短视频下载| av激情综合网| 91视视频在线观看入口直接观看www| 国产69精品一区二区亚洲孕妇| 国产一区二区三区四区五区美女| 久久爱www久久做| 精品一区二区三区视频在线观看| 久久av老司机精品网站导航| 老司机免费视频一区二区三区| 久久精品噜噜噜成人88aⅴ| 精品一区二区三区免费| 国产一区二区三区免费| 东方aⅴ免费观看久久av| 大胆欧美人体老妇| 91美女精品福利| 欧美色大人视频| 日韩一区二区在线观看| 精品久久久久香蕉网| 国产清纯在线一区二区www| 国产精品美女久久久久久2018| 国产精品久久久久精k8| 一区二区三区精品久久久| 亚洲国产综合在线| 蜜臀久久久99精品久久久久久| 国内精品免费**视频| av一区二区三区四区| 欧美性猛片aaaaaaa做受| 日韩一区二区高清| 日本一区二区动态图| 亚洲综合另类小说| 精品一区二区成人精品| 不卡av在线网| 欧美一区二区播放| 国产精品久久久久久妇女6080| 亚洲一区二区视频在线观看| 国内成人精品2018免费看| 91在线视频官网| 日韩欧美另类在线| 日韩久久一区二区| 免费人成黄页网站在线一区二区 | 精品系列免费在线观看| 成人精品免费网站| 欧美精品18+| 国产精品久久久久久亚洲伦| 亚洲成人av中文| 成人精品免费看| 欧美一区二区久久久| 中文字幕一区二区三区乱码在线| 日韩一区精品视频| 粉嫩13p一区二区三区| 91精品在线免费观看| 中文字幕在线一区免费| 精品一区二区在线观看| 欧美性猛交xxxxxxxx| 日本一区二区成人| 裸体在线国模精品偷拍| 欧亚洲嫩模精品一区三区| 成人黄色网址在线观看| 国产精品国产三级国产aⅴ入口 | 中文字幕视频一区二区三区久| 亚洲大片精品永久免费| 国产伦精品一区二区三区在线观看| 欧美亚洲综合久久| 国产精品美女久久久久高潮| 青青草国产成人99久久| 欧美性生活久久| 国产精品美女久久久久aⅴ国产馆| 日本在线观看不卡视频| 欧美日韩久久一区| 亚洲摸摸操操av| 99精品视频在线观看免费| 久久久久久一二三区| 美女在线视频一区| 777xxx欧美| 亚洲成人免费在线| 欧美在线999| 亚洲免费在线播放| 一本到一区二区三区| 国产精品五月天| 国产成人免费在线观看不卡| 制服丝袜av成人在线看| 日韩精品专区在线影院重磅| 不卡高清视频专区| 青青草成人在线观看| 欧美日韩高清在线播放| 伊人夜夜躁av伊人久久| 91精品国产免费|