考虑下重新设计这个系统


1、核心数据类 KxVector , KxMatrix 以及其操作为整个系统的核心
KxVector 以一维数组封装向量数据
KxMatrix 以二维数组封装矩阵数据
定义 对 KxVector,KxMatrix 的数学操作为全局函数
包括向量的加减乘除、向量连接、取对数、倒数等
    矩阵的加减乘除、取对数、倒数等
    以及矩阵与向量、向量与矩阵、矩阵与常数、向量与常数等的计算操作
(也 可以将操作封装到 向量 或者 矩阵里面,但当操作过多的时候,一个类的内容似乎过多以致感觉out of control?)

2、图像核心类 KxImage
应封装 图像的数据 以及 对图像的常规数据存取操作

这三个类应该是整个系统的核心。后面的所有操作与计算都基于这三个基本类。

后面开始按功能分类

1、边缘检测
  abstract class KxEdgeMask // 边缘检测的模板
  KxSobelMask extends KxEdgeMask   // sobel 算子
  KxPrewittMask extends KxEdgeMask // prewitt 算子
  KxLogMask extends KxEdgeMask     // LoG 算子
  ....等等

  KxEdgeDetect
  定义一个接口:edge( const KxImage,KxEdgeMask mask);
                edge( const KxImage,const char* mask); 
 
  对外提供边缘检测服务时候,可采用 Facade ,也可以采用 Factory
 
2、颜色空间
  abstract class ColorSpace( KxImage );
  HSIColorSpace extends ColorSpace
  YIQColorSpace extends ColorSpace
  等等。直接在构造函数里面进行转换!


3、特征提取
   特征向量类:KxFeature extends KxVector
   这里面就复杂许多了。
   细分如下:
A、颜色特征     KxColorFeature
B、灰度共生矩阵 KxGLCM
C、灰度-梯度 共生矩阵  KxGGLCM
D、灰度行程长度  KxGRLS
E、灰度差分统计  KxGDSM
。。。

4、识别策略
abstract class KxReocognizeStrategy
// 滑动窗口识别
 KxMoveWindowingRecognize extends KxReocognizeStrategy
// 金字塔分析识别
KxPyramidAnalysisRecognize extends KxReocognizeStrategy
// 基于窗口合并的识别
KxWindowCombineRecognize extends KxReocognizeStrategy

5、识别算法:即分类器

abstract class KxClassfier

KxAdaBoost extends KxClassfier

KxRealBoost extends KxClassfier

KxCascadeAdaBoost extends KxClassfier

KxBayes exnteds KxClassfier

KxDecisionTree extends KxClassfier

6、显示策略

 abstract class KxDispTargetResult

//显示图像效果: 在目标区域上画 矩形框
class KxDispTargetRectLine:public KxDispTargetResult

//显示图像效果: 改变目标区域颜色
class KxDispTargetColor:public KxDispTargetResult

//显示图像效果:修改背景区域颜色,目标区域颜色不变
class KxDispBgColor:public IDispTargetResul

7、参数的读取,保存

 save to xml with  specified f 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值