hysterisisthreshold.h

来自「barcode readers [ from Image]」· C头文件 代码 · 共 80 行

H
80
字号
//
// HysterisisThreshold.h
//   Given a low and high threshold, output the connected components that are entirely
//   above the lower threshold, and at some point above the upper threshold.
//
// Copyright (C) 2003, 2006 by Jon A. Webb (Contact via GMail; username is jonawebb)
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License, or (at your option) any later version.
// 
// This library 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
// Lesser General Public License for more details.
// 
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
//

#ifndef CHysterisisThreshold_h
#define CHysterisisThreshold_h

#include "Ladder.h"
#include "PipelineStage.h"
#include "Sequence.h"

#include <e32cons.h>

namespace Algorithm
{
	class CHysterisisJoin;
	class Core::CLadder;
	class Core::CSequence;
	class Core::MJoin;

	class CHysterisisThreshold :
		public Core::MPipelineStage
	{
		// Lifecycle
	public:
		IMPORT_C static CHysterisisThreshold* NewL(int nLowThreshold, int nHighThreshold);
		~CHysterisisThreshold(void);
	private:
		CHysterisisThreshold(int nLowThreshold, int nHighThreshold);
		void ConstructL();

		///////////////////// Overrides ////////////////////////
		//
		// Overrides from MPipelineStage:
		//
			// Operations
		public:
			Core::CImage FrontL();
			void PushL(Core::CImage);

			// Accessors
		public:
			bool Empty() const;
		//
		//
		/////////////////// End of overrides ///////////////////

	private:
		// Attributes
		bool ibEmpty;
		// Input (and output) image
		Core::CImage iImage;
		// Low and high thresholds
		int iLowThreshold, iHighThreshold;
		// The pipeline used to do image processing
		Core::CLadder *iLadder;
	};

};

#endif // CHysterisisThreshold_h

⌨️ 快捷键说明

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