- 在线时间
- 677 小时
- 最后登录
- 2021-3-24
- 注册时间
- 2015-11-19
- 听众数
- 142
- 收听数
- 1
- 能力
- 140 分
- 体力
- 13629 点
- 威望
- 11 点
- 阅读权限
- 200
- 积分
- 9762
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 3541
- 主题
- 2983
- 精华
- 95
- 分享
- 0
- 好友
- 404
升级   95.24% TA的每日心情 | 开心 2017-1-9 14:34 |
---|
签到天数: 272 天 [LV.8]以坛为家I
- 自我介绍
- 吃吃吃
 群组: 乐考无忧 群组: 2014国赛优秀论文解析 群组: 2016美赛冲刺培训 群组: 2016国赛优秀论文解析 群组: 2016国赛备战群组 |
某些游戏,当用户在触摸屏上输入一个形状(圆、矩形、三角形等)后,应用根据接收到的不同形状来执行不同的操作,但如何判断用户输入的形状类型是此应用的主要问题。( x& S+ f$ k: R+ Z- m
% V5 m' `( f: P A/ @2 e! p$ t
为了解决此问题,下面介绍一种基于标记法的形状识别算法。
$ h5 P0 Y, w2 ~2 `$ E1 E! L. Q
0 i/ f5 B$ ^9 d. [对于输入图像,我们需寻找一种表示方法,来区分出所有形状(为了说明这里我们只识别圆、矩形、三角形三种不同的形状,其他形状可对算法进行扩展),无论是何种表示方法,必须对图像的平移、旋转、收缩不敏感。" J7 q* y. f2 E9 J
; g4 U( i% r' o9 ~2 Y/ _
下面介绍基于标记的形状检测算法:* J& x+ h3 r* F2 \ s. f
" ^" W/ D$ E! V/ i8 [
1、获得形状的轮廓坐标;# q" r, _& A" A; M$ l8 H6 w$ b
$ e8 {' l, C2 O0 p: V2、将轮廓坐标转换为相应的极坐标(theta-rho),这里我们主要关心rho,rho为轮廓上的点到该形状重心的距离;
* `2 C" _; @) c
+ T: a [6 b. x0 b k( F# x3、根据rho的特征区分各个形状。& x" D8 o3 c# V
- v9 e$ e* \9 {4 ] e根据第2步得到的theta-rho关系图(如下图所示)可以得知,圆形的最小rho相对较大;矩形有四个明显的峰值;三角形有三个明显的峰值。故可以利用此特性来区分形状。
- u: g9 \- r5 S+ _
( {7 U+ |; e6 g9 c
( Y. w' B4 h9 R/ b, C* n
" ^; o8 _& x5 j8 r8 y" a3 o" E: d3 `" B" L
; O# {: }% q2 R9 m/ @' |. S
|
zan
|