2021年のディープラーニング論文を1人で読むAdvent Calendar15日目の記事です。今回紹介するのはデータセットの論文です。
空港の保安検査などで使われるX線検査を、AIで自動化できないだろうかというのがこの論文の背景です。そのためにはデータセットがいくつか作られてはいるのですが、現実世界でのデータで、ある程度の禁止品のバリエーションを伴い(12クラス)、1枚以上禁止品が入った画像が数万単位である、大規模なデータセットは今まで作られていませんでした。それを作ったよというのがこの論文です。
結論から言うとまだまだ実用には難しいのですが、なぜ難しいのかがデータセットの作成者の視点から語られています。中国科学院のメンバーが中心の論文です。ICCV2021に採択されています。
- タイトル:Towards Real-World Prohibited Item Detection: A Large-Scale X-Ray Benchmark
- URL:https://openaccess.thecvf.com/content/ICCV2021/html/Wang_Towards_Real-World_Prohibited_Item_Detection_A_Large-Scale_X-Ray_Benchmark_ICCV_2021_paper.html
- 出典:Boying Wang, Libo Zhang, Longyin Wen, Xianglong Liu, Yanjun Wu; Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV), 2021, pp. 5412-5421
- コード:https://github.com/bywang2018/security-dataset
X線による持ち込み禁止品検出のためのデータセット
PIDrayデータセット
本論文では、12種類の持ち込み禁止品を含んだ、X線画像のデータセットを作っています。名前をPIDrayデータセットと呼んでいます。
既存のデータセット
X線による禁止品検出を目指すためのデータセットは過去にもいくつかあり、以下のようなものがあります。
PIDrayはこれらのデータセットと比較して、以下のような特徴があります。
- クラス数が12と過去最多。以前はナイフや銃、はさみなど限られたものしか含まれていなかった。これにモバイルバッテリーやライター、スプレーなどより一般的な禁止品を追加した。
- 禁止品が含まれている画像の枚数が最多。どの画像にも最低1個以上禁止品が含まれている。データセットの規模ではSIXrayが100万枚以上と最多だが、100万枚あっても禁止品が8929枚と不均衡データだった。PIDrayでは、必ず禁止品のどれかが含まれていることを保証している。
- セグメンテーション用のマスクが入っている。これまでのデータセットはBounding Boxだけだったが、これにインスタンスセグメンテーション用のマスクが追加されている。
- 地下鉄、空港、駅と多様な場所でのデータがあり、合成データではない。以前のデータセットは本物のデータは地下鉄のみで、空港のデータは合成データだけだった。
- 公開データセット。特に申請が必要なく、GitHubからダウンロードできる。ただし、データセットは商用利用不可で、研究利用のみ。
クラスごとの統計量
一番少ないBatonで約2000、最も多いHammerが8000弱と極端な不均衡データではありません。
テストデータにおけるEasy, Hard, Hiddenの設定
PIDrayの特徴的なところに、テストデータをEasy, Hard, Hiddenでクラス分けしているところです。
- Easyは1枚の画像に禁止品が1個だけあるケース
- Hardは1枚の画像に禁止品が複数あるケース
- Hiddenはワイヤーを巻いて形状を変えたなど意図的に隠されたデータがあるケース
保安検査で本当に見つける必要があるのはHiddenなので、かなり実践的な問題設定となっています。テストデータ内のEasy, Hard, Hiddenの分布は以下の通りです。
どれぐらい精度でるの?
著名な物体検出のモデル、本論文の提案手法では以下の通りです。本論文ではデータセットの構築のほか、Attentionベースのモデルを構築しています。データセットの論文なので、モデルの詳細については軽く触れる程度にします。
あまり精度出ていないように見えますが、ここでのAPの定義は割と厳しくて、IoUが0.5~0.95までの10刻みのAPを計算して、それを平均したもの1です。下の表ではAP50の値も計算されていますが、Hiddenを評価したときの10刻みのAPが49.5でも、AP50だと64.5出ています。したがって、AP50よりかは遥かに厳しい評価基準で評価しているという点には注意が必要です。
ARはAverage Recallを示します。
データセットの作成方法
データセットの論文で最も価値があるのは、データセットの作成方法や、作成時の苦労の話、データ特有の難しい話だと個人的に思っているので、ここを重点的にフォーカスしていきます。
データの収集方法
空港、地下鉄駅、鉄道駅などセキュリティ検査機が設置されている場所で、学術目的でのデータを提供してもいいよという人を募っています。X線の検査機はメーカーの異なる3台を使用し、検査機による画像の違いは、対象物の大きさや色、背景の違いに現れています。検査機に荷物を入れると、空白の部分を検出して自動的にトリミングします。この解像度は高さが固定で、幅は荷物の大きさに依存します。
禁止品のデータの取得するためのプロセスは次の通りです。セキュリティ検査時に、あらかじめ用意された禁止品を、データ提供者のバッグにランダムで入れます。その際対象物の面積を記録し、アノテーションの高速化に活用します。12種類の禁止品に対し、2~15のインスタンスを用意し、多様性を保つようにしています。PIDrayの47677枚の画像を収集するのに3ヶ月要しています。
アノテーション
事前にアノテーター(ボランティア)がX線画像から禁止品を迅速かつ正確に識別できるよう、トレーニングコースを用意しています。
まず5人のボランティアに禁止品を含まない画像を除外してもらいます。同時に画像の分類ラベルを先につけ、続くアノテーション作業を容易になるようにしています。
アノテーション(各インスタンスのBounding Boxとセグメンテーションマスク)は、10人以上のボランティアを組織して、LabelMeを使って2ヶ月間作業しています。1枚の画像のアノテーションにかかる時間は約3分で、1人のボランティアが毎日10時間かけてアノテーションをしています。複数回のダブルチェックを経て、誤差を可能な限り小さくするようにし、高品質なデータセットを作成するように心がけたとのことです。
ドメイン特有の困難な点
X線は強い透過性を持つため、物体を通過するとき物質によってX線の吸収度合いが異なります。そのため、X線画像では素材ごとに色が異なり、この性質が重なり合ったオブジェクトの検出を困難にしています。
また、データの不均衡や、クラス内の差異など自然画像特有の問題も兼ね備えています。
モデルの工夫
物体検出でよく使われる特徴マップのピラミッドのほか、Headの部分にSelective Channel-wise Attention module (SCA) 、Selective Spatial Attention module (SSA)、Dependency Refinementという3つのモジュールをこの論文独自に用意しています。いずれも性能向上に効いており、Headの非線形性を上げているものと解釈できます。
「X線データだからこういうモジュールを入れた」という理由付けが不足していたので、「あくまで性能を上げるためのモジュールなんだな」程度に解釈して流し読みしました。
またこれらのモジュール、特にDependency RefinementはX線データだけでなく、MS COCOやPascal VOCといった通常の検出/セグメンテーションのデータセットでも有効であったことが報告されています。ここらへんはデータセットの構築からは若干脱線するので、割愛します。
まとめと感想
「AIを使ったX線による禁止品の検出」という重要度の高そうな問題に対し、過去最大規模の公開データセットを構築したというのがとにかく大きい貢献です。データの作成期間もデータの取得に3ヶ月、アノテーションに2ヶ月と膨大な日数を費やしています。これをMS COCOレベルの何十万というデータセットへスケールするのはとても大変ではないかと思われます。
読んでいて「4~5万枚の高品質のアノテーションをつけてやっとこの程度の性能なのか」という気持ちが非常に強かったです。このデータセット商用利用不可なので、実際に商用化しようとすると似たようなデータセットを1から作らないといけないでしょう。現実的に採算の取れ、なおかつ実用に耐えうる精度を持った禁止品の検出器を作る道は、まだまだ遠いんだなということを認識できる有用な論文でした。もしかすると物体検出ではなく、別の問題として捉えたほうが良いのかもしれません。単に物体検出で遊ぶ程度ならちょうどいい枚数だと思います。
告知
このアドベントカレンダーが本になりました!
https://koshian2.booth.pm/items/3595424
Amazonでも扱いあります詳しくは👉 https://shikoan.com
-
MS COCOのmAPと同じ定義らしい ↩