レポートブログを書く際の小技をご紹介 #reinvent

re:invent のスライドの文字起こしはRekognition におまかせ!
2018.11.28

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

好物はインフラとフロントエンドのかじわらゆたかです。
レポートブログこうやって書いたら楽できましたよって話を同僚にしたらそれで一本エントリー書けますよって言われたので、 書いてみたいと思います。

レポートブログを書くときに煩雑なこと

セッションを受けていて、登壇者のスライドの内容をレポートに反映させたいってあると思います。 そのときに登壇者の速度に合わせて入力するのはやはり無理があるので、写真に収めていたりすると思います。 これを文字起こしするのは意外と手間だったりします。

例えば、自分が受講したセッションのスライドがこちら。

結構な文字の量ですね。

これを実際に手で入力しようとすると、打ち間違いとかもありそうですし、正直大変です。

Rekognitionを用いてスライドから文字検出する

ここで、Rekognition の text in imageを用いてみます。

Rekognition の text in imageは対象はISO basic Latin scriptとのことですが、今回のre:invent のスライドで構成されている文字は上記にほぼ当てはまるはずですので、使ってみたいと思います。

普通にManagement ConsoleからRekognitionのText in imageを選択し、先程の画像を読み込ませてみます。

見ての通り100%の精度で文字認識ができていることがわかります。 あとは改行を調整するだけで、スライドの文字起こしは完了です。

スライドをアップロードする前に行う小技

この際に用いる小技としては、撮った写真をそのままRekognitionにアップロードし続けるとデータ量が心配ですし、アップロードの時間もかかってします。
その際は画像サイズ等を小さくして、アップロードすることをおすすめします。 自分が使ったシェルスクリプトを共有します。

batchConvert.sh

while read line
do
    convert $line -resize 2000x -sampling-factor 4:2:0 -strip -quality 85 -interlace JPEG -colorspace sRGB resize_$line
done < image.list
ls -1 DSC* > image.list
sh ./batchConvert.sh

これらを用いることで、フォルダ内にあるDSCから始まるファイルのリストを作成し、解像度を4000px * 3000px から 2000px * 1500pxにリサイズを行っています。

ファイルサイズにして1/10ほどに縮小できています。

4.3M 11 27 11:21 DSCN0637.JPG
374K 11 28 00:00 resize_DSCN0637.JPG

これでも文字認識にはほとんど影響ありません。

まとめ

これで文字起こしの手間がガツッと減ると思います。