* y. Z. u3 S4 D) p5 N+ X0 X hi,我是为你们的xio习操碎了心的和鲸社区男运营 我们的网站:和鲸社区 Heywhale.com: c* Y. q1 l& ?8 J2 m8 y& H7 f
我们的公众号:和鲸社区(ID:heywhale-kesci) 有干货,来!大家好,事情的起源是这样的,我司搞了个声学图像水下目标检测的比赛,项目的同学托我来这里宣传宣传。
5 d: F4 [% F- Y6 l) J 好嘛,举手之劳。 , p# k8 E- e( ~! v
0 S; i9 \& M: Y& l7 `8 t6 W0 ] 但是我仔细看了下题目,咦,声学我懂,但是声学图像是啥?刚看到数据集的图片,我是懵的
" Q5 E Y2 C7 ~
. r6 `; C! H; f9 h" B9 j 唯一的感觉是“金色的,怪好看的 ”,但你问我这具体画了啥?别问,问就是“我只能分清前视和侧扫”
/ G# e0 h. p4 h% B( z$ E2 w 刚刚恶补了一下办赛老师的ppt,终于给整明白了,让我来个脱水版的说明。 4 w) U% m9 g9 O" Q0 z/ R- v+ @7 P
先看这两张图
. g: n. O! o b$ f! T
1 O; z/ H1 a+ F- f- F7 h' | 第一张图是《国家地理》杂志某一期的封面,采用航拍的视角,记录了沙漠中的骆驼(以及它们的影子)
: q2 M7 m# Z* \0 m/ H' i- ]2 Y* a
1 f+ n, g1 R; u 第二张是一张声呐图像,显示的是海底的一辆自行车。 * \( p( ^/ e) a! v! C+ D
其实声呐图片和清晨/傍晚俯拍的照片是一样一样的,都是声源/光源在被观测物体斜上方,然后观测者以俯视的视角观测。 3 s0 s- {! _2 K, A# g5 ~; d# B
基于对图像的观察。你会觉得对于此类图片,识别物体的本身其实挺困难的,反而,“阴影”成为了我们识别物体的关键。 * r4 @" w) D8 g) G: i4 O1 r: u
有了这么个和已有认知的连接,似乎声呐图像就好懂了一点。 * B- K% a) I) j4 A, {
/ D0 ^: j" {3 D& s- @9 }+ t0 R 你看这就是辆小汽车 2 V8 u1 E/ c, Z4 m3 h( ~
6 _) n1 y3 ]- A. ^% m5 v: d
这就是人工堤坝和沙坡
" B$ [ l |8 x: U 再往本质说,声呐图像就是根据收到回声时间的分布产生的图像。声呐发出一个触发脉冲,并在水中进行传播,碰到沙地/障碍物会反射,那么收到回声的时间越长,就说明目标物离声呐发出的距离越远。 " E) y7 Y6 x C) z! U
下面右图是左图顶边的切片,可以看得到绿圈和红圈的两张图像上的峰谷值是相对应的。 * j8 h( \. w7 x" E. R, C+ l
. N; f5 K0 ~ Z, s7 T
仔细观察下图④⑤⑥⑦的位置,距离声呐竖直方向的上的距离④<⑤<⑥<⑦,但是空间上⑥到①的距离小于④到①的距离,所以⑥在声学图像上离原点更近。而①④、①⑤、①⑥长度比较接近,所以他们会在声学图像上,产生一个高光区域(即图片上的“强反射”)
6 F+ T( W* p0 ^2 e) [8 q# g! Y2 T 而⑥,⑦中间类似“背坡”,收不到声音,所以就产生了一块阴影。 1 Y+ a! Z& X+ U3 {3 e* X
! g' B7 A3 m1 B% O9 S 大致就是这么个意思,你品,你细品。
; j, d, [( T5 V 还想掌握更多细节,或者觉得我说的不太好懂,你可以查看以下视频,以及比赛的讨论区
0 a% S: b; O; b% w/ x6 n& T 2020“水下目标检测算法赛” * \9 p. u: f: L9 N$ f5 ^
水下目标检测算法赛(声学图像赛项) / 讨论区 / `6 d0 w2 D/ r) k2 T
有了前面的讲解,现在在回过头看声呐图片,是不是有那么点儿意思了? - q0 H: h) f0 ~. X
5 k/ _- H3 f/ [) A% t1 D. h 你看这个侧扫声呐图像,显示的是稍微有些起伏的沙地,而这个前视声呐图像显示的是两根柱子。 # ]+ W, L' O3 \' u
讲完图像之后,我们再来讲讲题该怎么做 $ b2 }# t# X8 p
办赛老师甩了我们一篇论文[1],里面有一句话引起了我的注意“至今,没有专门为声呐图像设计的目标检测技术”。的确,我之前在四处找资料的时候也发现,相关资料少,使用的方法比较传统。 5 C v% S! {9 [ Q! f* I
举个例子: # J0 l% k0 W& j$ z& C
WACV 2020收录的相关文章[2]中,使用主要的框架为Faster R-CNN # d: c0 x' s9 r* p
老师给的论文中,使用的方法为CNN/FCN
% ~* T+ [$ g) D5 _ , D% w0 }7 \/ K A: U' n# z
其中Faster R-CNN发表于NIPS 15,CNN和FCN则更是CV领域传统艺能。可见,这个题目的答题空间之大。
7 x+ b- Q8 k0 g/ v 另外,WACV 2020收录的相关文章[2]也给了我们提示,其中写道:
$ p% h+ g0 |5 S' M$ J “声纳图像的目标检测任务面临着数据量不足和噪声干扰两大挑战,这两大挑战导致了模型的过度拟合。”
& C% j) X& e4 s! g1 q1 Y 以上的信息整合后,解题思路呼之欲出:使用为光学图像设计的目标检测算法+针对声学图像特点进行优化。(对不起好像也没说啥有用的)
( [0 M y" ~3 s( \ 要是不会,也别怕,现在排行榜上的大家也都还在摸索之中,说不定随便搞个光学目标检测算法就能登顶了呢? ( `0 O' U6 J8 o! B7 ~% U
3 I! V4 M+ Y0 z( ? 最后,要进行我们的传统项目,也是大家最最最期待的环节:
2 ^. y+ c! S6 i; x# u 官方baseline公布
9 b0 [5 }1 J) E, [2 _ 使用Google Object Detection 完成水下目标检测
( t& n ?7 @3 J- ` https://www.heywhale.com/mw/project/5e6331644b7a30002c98895e
) S: S/ Y: C" {& b3 B: e; m' ]8 M) U 项目优雅介绍了baseline的使用全流程,欢迎大家试用 $ l: m+ i" _/ a( F# A2 |" I
什么?你说你不想努力了,只想找(划掉)富婆(划掉)操作更简单的baseline?行吧。 + n2 G0 l+ U: J: Q$ [1 H1 \
懒人版声学 Baseline 4 @8 @: |9 _7 J# v3 q3 I1 n- a
https://www.heywhale.com/mw/project/5e69d767ae2d090037791205
6 ]0 p! }% y! q 某位想出道的参赛选手为了大家,在官方baseline的基础上优化了一个更流畅的版本,连代码文件都不用拆开,直接调用+传参就可以了
6 r6 U N: M% l3 o- S% ^ 运行 tfrecord_generator.py, 采用 -path 参数传入大赛数据集的压缩包 6 }; p# _# P, W) ~. i- V1 |4 \% Z
运行 model_train.py, 采用 -path 参数传入预训练模型的文件夹地址 运行 inference.py, 采用 -step指定希望被用于推理的训练步数, -path指定被推理图片放置的文件夹路径有了它,三行代码,你就可以交上作业了,真是妙啊 % I8 O; ~/ d( b7 u# s
2 v* |( m+ n6 g+ `9 Y" i
再提一嘴,这次数据集的大小也非常友好,只有1.32GB,训练百八十次都不会心疼,平时输在算力的同学们,这次也可以大展身手了。 " Q6 c3 P+ j' H
你不算我不算,声呐图像怎么办? " X, @9 @+ E& x; S6 c
你参赛我参赛,海底世界任我探! ) r! j& _. K- k8 h/ T( F% s( \
期待在排行榜上看到各位的大名。以上。 & ^: Z, D" m0 q. L6 n6 S! U
相关资料:
+ ~" Z' C) {) A \ 1.M. Valdenegro-Toro, "Learning Objectness from Sonar Images for Class-Independent Object Detection," 2019 European Conference on Mobile Robots (ECMR), Prague, Czech Republic, 2019, pp. 1-6.
* n+ D0 g4 N2 p 2.Qixiang Ma, Longyu Jiang, Wenxue Yu, Rui Jin, Zhixiang Wu, Fangjin Xu; The IEEE Winter Conference on Applications of Computer Vision (WACV), 2020, pp. 729-738
! B# l+ ^ `8 f o$ Z4 \) {: r' n# ]1 d; [. K6 @: |
$ `4 h, s0 E( v9 K! ?) e
8 _. ]0 K z! I. V8 K" w4 v5 i
& b. P' l! l; p9 Z+ I, B |