histmod.h

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

H
79
字号
//
// HistMod.h
//   Modifies the histogram to match a target.
//   The histogram target specified in the constructor must sum to 1.0.
//   Input is a grayscale image (supports IGrayIndex).
//   Output overwrites input.
//
// 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 HistMod_h
#define HistMod_h

#include "ImageSize.h"
#include "PipelineStage.h"

#include <e32cons.h>

namespace Algorithm
{

	class CHistMod :
		public Core::MPipelineStage
	{
		// Lifecycle
	public:
		IMPORT_C static CHistMod* NewL(const float* pfTargetHist);
		~CHistMod(void);
	private:
		CHistMod(const float* pfTargetHist);

		///////////////////// 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;
		// the target histogram
        float ifTargetHist[256];
		// the cumulative target histogram, as a count of number of pixels
		// with each value
        TInt32 inHistTarg[256];
		// image size
		Core::IImageSize iSize;
	};

};

#endif // HistMod_h

⌨️ 快捷键说明

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