研究開発部 Architectグループの堤と申します。今年4月より、まったくの門外漢だったところから研究開発部でマネジメントを担当することになりました。入社して早6カ月が経とうとしていますが、マネジメントの面でも技術面でもまだまだ学ぶことだらけです。キャッチアップしたことの整理も兼ねて、これからしばらくの間、研究開発部の技術や成果物について紹介する記事を書いていきたいと思います。
まず第一弾として、本記事ではSansanの名刺データ化フロー 1 の中で使われている研究開発部の技術についてご紹介します。 2
切り出し(背景分離)
物体検出・セグメンテーション技術を用いて、背景から名刺を切り出します。
こちらは、スマホのカメラ経由で名刺を取り込む場合は、オンデバイスで処理を行っています。こちらについてはまた記事を書きたいと思っています。(弊社ではこの技術を「Smart Captured」略して「スマキャプ」と呼んでいます。)
(2022.12.13追記)スマキャプについては以下の記事に詳細を書きました。 buildersbox.corp-sansan.com buildersbox.corp-sansan.com
OCR
Sansanの研究開発部では、名刺に特化した文字認識エンジンを独自に開発しています。 切り出した名刺画像を入力し、文字列検出・項目推定・文字認識を行い、結果を出力します。
0 | 1 | |
---|---|---|
0 | full_name | 新立 真克 |
1 | shigemi1@nagano.lg.coc | |
2 | company_name | プランニングオフィス31株式会社 |
3 | position | 経営管理部 部長 |
4 | address | 456-9413 長野県男鹿市岡田4-3-5 上島ビル903 |
5 | telephone_number | 135-7641-6603 |
6 | fax_number | 135-7641-6604 |
7 | url | http://nagano.lu.coc |
8 | mobile_number | 623-0040-2452 |
9 | card_exchange_date | None |
(文字列ごとの項目推定・文字認識結果)
この独自開発OCRエンジンは氏名・E-mailに特化していたのですが、2021年に会社名、役職、住所、電話番号、URL、etc…の認識もサポートした「全項目版」をリリースし現在プロダクション環境でも稼働しています。
この独自開発OCRを弊社内では「NineOCR」と呼んでいます 3。こちらについてもまた別途記事を書きたいと思います。
(2022.12.13追記)NineOCRについては以下の記事に詳細を書きました。 buildersbox.corp-sansan.com
ホワイトニング
スマートフォンのカメラで撮影された名刺は、そのほとんどが影・照明条件によって劣化しています。 アプリ画面上のUI/UX向上・データ化における視認性向上を目的に、Image-to-Imageモデルによる画像変換技術を活用し、 カメラで撮影されて名刺をスキャナで撮影された名刺のように変換する「名刺ホワイトニング」を提供しています。
現在こちらのエンジンの改善版を開発中です。新ホワイトニングについてもリリース次第また記事を書ければと思います。
超解像
解像度と文字認識精度には相関があるとされており、画像を拡大することで文字認識精度の低下を防ぐ取り組みを行っています。 名刺データで独自に学習した超解像モデルも利用することで、低解像度画像に比べて、30%以上OCR精度が向上します。
バーの左側が超解像なしの元画像、右側が超解像適用後の画像です。文字に着目すると、輪郭が非常にくっきりしていることがわかります。
ただし、実は本技術は現在のデータ化フローの中では使われていません。今のところ、認識に問題があるほどの低解像画像が流れていないため 4 です。
まとめ
Sansanの名刺データ化フローの中で使われている研究開発部の技術についてご紹介しました。
- 切り出し(背景分離)
- OCR
- ホワイトニング
- 超解像
なお、私自身は研究開発部のArchitectグループという、研究開発成果をプロダクトとして外に出していくための諸々を担当しているエンジニアチームのマネージャーをやっています。多くのR&D成果に関わることができ、MLOps/DevOpsやデータ基盤構築など、エンジニアリングとしても非常におもしろいことを経験できるチームかと思います。気になる方はぜひ以下からご応募ください。
R&D MLOps/DevOpsエンジニア | Sansan株式会社
R&D MLOps/DevOpsエンジニア(中部) | Sansan株式会社
求人内容も更新したのでぜひご検討いただけますと幸いです。
弊チームの求人が588万〜1208万だったのを、800万〜1500万に更新してもらいました。
— Shuichi Tsutsumi (@shu223) 2022年7月4日
R&D MLOps/DevOpsエンジニア | Sansan株式会社 https://t.co/zqkcIb1y8g