www.pudn.com > backmode824.rar > KCluster.h
// KCluster.h: interface for the CKCluster class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_KCLUSTER_H__D4178D5D_E86A_4AD8_9A9C_E83268E9A9BF__INCLUDED_)
#define AFX_KCLUSTER_H__D4178D5D_E86A_4AD8_9A9C_E83268E9A9BF__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#ifdef IHARDWARE
#define BITS 4
#else
#define BITS 3
#endif
class CKCluster
{
public:
BOOL KClusterHS(double *lpMeanValue,int ClusterNum,
int IterativeNum,double error);
BOOL KClusterRGB(double *lpMeanValue,int ClusterNum,
int IterativeNum, double error);
void InitData( LPBITMAPINFOHEADER lpMapHeader,
LPBYTE lpImage,LPBYTE lpDMap,
LPBYTE lpHMap,LPBYTE lpSMap );
CKCluster();
virtual ~CKCluster();
private:
LPBITMAPINFOHEADER m_lpMapHeader;//图象头指针
LPBYTE m_lpImage;//图象数据指针
LPBYTE m_lpDMap;//处理图象数据指针
LPBYTE m_lpHMap;//H图象数据指针
LPBYTE m_lpSMap;//S图象数据指针
double CostFuncHS(double *d1,double *d2);
double CostFuncRGB(double *d1,double *d2);
};
#endif // !defined(AFX_KCLUSTER_H__D4178D5D_E86A_4AD8_9A9C_E83268E9A9BF__INCLUDED_)