houghcircle.h

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

H
69
字号
//
// HoughCircle.h
//   Finds the center and radius of a circle in an image.
//
// 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 CHoughCircle_h
#define CHoughCircle_h

#include "PipelineStage.h"

#include <e32cons.h>

namespace Algorithm
{

	class CHoughCircle : public CBase
	{
		// Lifecycle
	public:
		IMPORT_C static CHoughCircle* NewL();
		~CHoughCircle();
	private:
		CHoughCircle();

		// Operations
	public:
		// Input parameters:
		//   image: the input image. non-edge pixels are 0, edge pixels are non-zero.
		//   nMinSize, nMaxSize: the minimum and maximum radii of the circle
		// Output parameters:
		//   cx, cy: the circle center
		//   r: the circle radius
		//   nPeak: number of edge pixels in this circle
		void FindCircleL(Core::CImage image, int nMinSize, int nMaxSize, int& cx, int& cy, int& r, int& peak);

		// Given a known circle center and an edge image, find the circle having
		// that center and the most edge pixels.
		// Input parameters:
		//   image: the input image. non-edge pixels are 0, edge pixels are non-zero.
		//   nMinSize, nMaxSize: the minimum and maximum radii of the circle
		//   cx, cy: the circle center
		// Output parameters:
		//   r: the circle radius
		//   nPeak: number of edge pixels in this circle
        void FindCircleGivenCenterL(Core::CImage image, int nMinSize, int nMaxSize, int cx, int cy, int& r, int& peak);

	private:
	};

};

#endif // CHoughCircle_h

⌨️ 快捷键说明

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