|
, n. e& K% K1 i" d7 Q' Z# e hi,我是为你们的xio习操碎了心的和鲸社区男运营 我们的网站:和鲸社区 Heywhale.com1 ]) `5 R3 w( d h
我们的公众号:和鲸社区(ID:heywhale-kesci) 有干货,来!大家好,事情的起源是这样的,我司搞了个声学图像水下目标检测的比赛,项目的同学托我来这里宣传宣传。 5 y& e& F j, A6 z1 Z [
好嘛,举手之劳。
6 A' V& F5 M" N3 c" ^
7 u4 v* q$ `3 q% O, L( H* R 但是我仔细看了下题目,咦,声学我懂,但是声学图像是啥?刚看到数据集的图片,我是懵的 ) ^+ w6 t: [2 o% A( D( i+ ]$ u
5 @2 S; t- r3 e. _8 O! i1 m, U! _
唯一的感觉是“金色的,怪好看的 ”,但你问我这具体画了啥?别问,问就是“我只能分清前视和侧扫”
# [; r) E: y, J* s4 \* [: g 刚刚恶补了一下办赛老师的ppt,终于给整明白了,让我来个脱水版的说明。
4 W; p' A3 m6 V4 F; T: z 先看这两张图
, s7 s# [' [" q5 q6 X+ L3 M; _ ! L2 s* U, Z7 D& ~* F# @
第一张图是《国家地理》杂志某一期的封面,采用航拍的视角,记录了沙漠中的骆驼(以及它们的影子)
6 |/ B" H# T# I. {: a 1 h5 U1 o$ Z2 g5 i9 V/ @
第二张是一张声呐图像,显示的是海底的一辆自行车。
# E" P3 o C8 Y7 x 其实声呐图片和清晨/傍晚俯拍的照片是一样一样的,都是声源/光源在被观测物体斜上方,然后观测者以俯视的视角观测。
) ` g5 ], ^# M( B 基于对图像的观察。你会觉得对于此类图片,识别物体的本身其实挺困难的,反而,“阴影”成为了我们识别物体的关键。 # r; E. S, g) D2 _
有了这么个和已有认知的连接,似乎声呐图像就好懂了一点。
! V- @/ G8 ~: R" X) @- R
$ i, j* `3 L, ?- \ F 你看这就是辆小汽车
. e& q" Z" K! `# o' b% Q
! v! Z$ H a- R& z1 ^. H 这就是人工堤坝和沙坡
" q7 Y3 |6 k5 q& w' i4 b 再往本质说,声呐图像就是根据收到回声时间的分布产生的图像。声呐发出一个触发脉冲,并在水中进行传播,碰到沙地/障碍物会反射,那么收到回声的时间越长,就说明目标物离声呐发出的距离越远。
4 I! R$ C7 f6 w1 }5 r6 X. w9 P 下面右图是左图顶边的切片,可以看得到绿圈和红圈的两张图像上的峰谷值是相对应的。
d; | O0 B y+ e# N ; C* v, }- R8 ^1 o
仔细观察下图④⑤⑥⑦的位置,距离声呐竖直方向的上的距离④<⑤<⑥<⑦,但是空间上⑥到①的距离小于④到①的距离,所以⑥在声学图像上离原点更近。而①④、①⑤、①⑥长度比较接近,所以他们会在声学图像上,产生一个高光区域(即图片上的“强反射”)
. D- }' b9 E& a! d$ W9 i 而⑥,⑦中间类似“背坡”,收不到声音,所以就产生了一块阴影。
* a7 U; {/ s' D5 q2 o0 {+ P
% x7 T) s+ E* P5 y+ \5 d2 q 大致就是这么个意思,你品,你细品。 3 c9 X' ?$ g0 f' M, p
还想掌握更多细节,或者觉得我说的不太好懂,你可以查看以下视频,以及比赛的讨论区
, q) p: p0 A, h8 u- | 2020“水下目标检测算法赛” 5 R# V/ W1 g$ e1 {4 u1 k/ C
水下目标检测算法赛(声学图像赛项) / 讨论区
$ H4 I: s- D: H& p 有了前面的讲解,现在在回过头看声呐图片,是不是有那么点儿意思了? 4 Z& |* |! i, R" C$ b C' o
7 p2 Y2 {- T3 ]: q- C4 q6 K
你看这个侧扫声呐图像,显示的是稍微有些起伏的沙地,而这个前视声呐图像显示的是两根柱子。
# C8 b/ r) ]! e4 u O 讲完图像之后,我们再来讲讲题该怎么做
k. h' O2 l( W 办赛老师甩了我们一篇论文[1],里面有一句话引起了我的注意“至今,没有专门为声呐图像设计的目标检测技术”。的确,我之前在四处找资料的时候也发现,相关资料少,使用的方法比较传统。
: H* d8 l" ^5 _ j/ H' N 举个例子:
8 M( a; k3 d7 S+ J8 A" R+ N( s N$ G WACV 2020收录的相关文章[2]中,使用主要的框架为Faster R-CNN
$ E# j* E' A1 q& u8 ] 老师给的论文中,使用的方法为CNN/FCN
% a8 X" Z' b K
; d! p, j) B, i2 i' ^1 I! u! l: m% C 其中Faster R-CNN发表于NIPS 15,CNN和FCN则更是CV领域传统艺能。可见,这个题目的答题空间之大。
) W7 j0 X3 [* p4 X 另外,WACV 2020收录的相关文章[2]也给了我们提示,其中写道:
/ p+ r- @ O8 A0 @ “声纳图像的目标检测任务面临着数据量不足和噪声干扰两大挑战,这两大挑战导致了模型的过度拟合。” & ]; p' x- d- D" g% i& x
以上的信息整合后,解题思路呼之欲出:使用为光学图像设计的目标检测算法+针对声学图像特点进行优化。(对不起好像也没说啥有用的) 9 O4 s' W& k; G! h
要是不会,也别怕,现在排行榜上的大家也都还在摸索之中,说不定随便搞个光学目标检测算法就能登顶了呢? 5 Y6 Q" Y4 X* j2 E/ q5 Z
! z/ L, d; _% r1 {: c f 最后,要进行我们的传统项目,也是大家最最最期待的环节: / S- C" `$ Z% O+ L4 N9 u% I8 W
官方baseline公布
1 G7 m" G M2 S" Z g 使用Google Object Detection 完成水下目标检测
! _3 n6 }" Z5 G: d* ?7 `2 V) i https://www.heywhale.com/mw/project/5e6331644b7a30002c98895e
2 w; ^ _/ Y8 O$ v( `1 K 项目优雅介绍了baseline的使用全流程,欢迎大家试用 8 w$ C, c7 n0 P6 a
什么?你说你不想努力了,只想找(划掉)富婆(划掉)操作更简单的baseline?行吧。
" G9 i9 e$ y; k2 s$ \6 d+ R 懒人版声学 Baseline " r' T6 g9 `/ e0 T" k
https://www.heywhale.com/mw/project/5e69d767ae2d090037791205
0 C" ?" E) @ `9 e* S Z 某位想出道的参赛选手为了大家,在官方baseline的基础上优化了一个更流畅的版本,连代码文件都不用拆开,直接调用+传参就可以了 4 n! l( C* E$ ]" F* r
运行 tfrecord_generator.py, 采用 -path 参数传入大赛数据集的压缩包 1 A% B0 ?7 `1 |6 R8 i$ ]4 h
运行 model_train.py, 采用 -path 参数传入预训练模型的文件夹地址 运行 inference.py, 采用 -step指定希望被用于推理的训练步数, -path指定被推理图片放置的文件夹路径有了它,三行代码,你就可以交上作业了,真是妙啊
: `2 U/ w2 l. t7 k |- O2 C* @ + y; b8 d" Y. V# _0 ^
再提一嘴,这次数据集的大小也非常友好,只有1.32GB,训练百八十次都不会心疼,平时输在算力的同学们,这次也可以大展身手了。
- r; R# |1 r7 x; z% p* ? 你不算我不算,声呐图像怎么办?
# ^9 i, ^- x8 q# f 你参赛我参赛,海底世界任我探!
$ t( s% Z* V" [ 期待在排行榜上看到各位的大名。以上。 n1 L' G. G. f! ^# T1 ?
相关资料:
/ v& m( U$ y0 c) k 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. + a$ G0 _3 {, D) p# _4 V5 L2 D
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 5 {( V, {5 j) i6 G& S2 B
; F- h. }! F4 C" a9 S. e- b9 `5 N8 T6 q8 H* K% l! w, n
4 g+ O3 K9 a$ l$ T) I# @1 \* s
+ V1 t" Q! s, T- q |