- 在线时间
- 677 小时
- 最后登录
- 2021-3-24
- 注册时间
- 2015-11-19
- 听众数
- 142
- 收听数
- 1
- 能力
- 140 分
- 体力
- 13629 点
- 威望
- 11 点
- 阅读权限
- 200
- 积分
- 9762
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 3541
- 主题
- 2983
- 精华
- 6
- 分享
- 0
- 好友
- 404
升级   95.24% TA的每日心情 | 开心 2017-1-9 14:34 |
|---|
签到天数: 272 天 [LV.8]以坛为家I
- 自我介绍
- 吃吃吃
 群组: 乐考无忧 群组: 2014国赛优秀论文解析 群组: 2016美赛冲刺培训 群组: 2016国赛优秀论文解析 群组: 2016国赛备战群组 |
某些游戏,当用户在触摸屏上输入一个形状(圆、矩形、三角形等)后,应用根据接收到的不同形状来执行不同的操作,但如何判断用户输入的形状类型是此应用的主要问题。- d" z) Z% F; V5 [3 y+ S8 p1 |% Y
. T$ g3 `* T a, x! W: Q+ n
为了解决此问题,下面介绍一种基于标记法的形状识别算法。/ g: H) Z7 K- P* R1 T# ^
8 i- f: P) a) b( J, H对于输入图像,我们需寻找一种表示方法,来区分出所有形状(为了说明这里我们只识别圆、矩形、三角形三种不同的形状,其他形状可对算法进行扩展),无论是何种表示方法,必须对图像的平移、旋转、收缩不敏感。
$ ?* ]; [0 ~9 Z
- k' C1 X- v/ v$ `2 S0 G5 _4 J下面介绍基于标记的形状检测算法:
7 n" g" r' s* v% Y7 E- H: S+ |) N+ Q' a: e
1、获得形状的轮廓坐标;! D2 A+ y/ ^' ^- h# | D
: E, o/ J! W7 V( y1 x5 `! u7 @- M
2、将轮廓坐标转换为相应的极坐标(theta-rho),这里我们主要关心rho,rho为轮廓上的点到该形状重心的距离;( j0 \3 S4 T" o: q
: S: X3 p( g3 [! P" U# U. u7 X7 e3、根据rho的特征区分各个形状。
' |6 a* p: {1 b7 c, K
# ]0 K/ m) q' C" T* }) Q$ W4 R2 ?根据第2步得到的theta-rho关系图(如下图所示)可以得知,圆形的最小rho相对较大;矩形有四个明显的峰值;三角形有三个明显的峰值。故可以利用此特性来区分形状。
! i4 H5 V; v" P/ U
6 g6 @, H! z( S7 ^7 |' V % |/ K0 ~3 i2 a8 \; l
8 n) g7 B N* v j+ [
$ s, ^0 ]" }/ W6 q1 }
% d8 Q* o" s4 h7 L' o) q% \# n3 s, ?
|
zan
|