勉強会:pixiv Night #02 - 画像処理技術 に参加した時のメモ
勉強会概要
発表
Blenderを使ってCUIベースで3D画像処理する by haya (15min)
- 下記のピクシブfactoryで使われている画像処理にBlenderを使ってる話
実はブログに詳しく書いてあるとのこと。このあたりかな
平面的なもの(Tシャツ)にディスプレイスメントマッピングと質感、パースで全然違和感なかった
- 画像処理する前に一度元画像からリサイズしてから、変換や合成をしている
- 元画像は容量的に重すぎて処理に時間がかかりすぎてしまう為
pixivFACTORYの画像処理周りについて何か話す by redcap97 (10min)
ピクシブfactoryで使われている画像処理の話
画像を変換するのに各フォーマット毎に別の処理をしている
- png … ImageMagickを使ってる
- pdf … rubyのprawnを使ってpdfを生成
- svg … potraceを利用して変換
小説の画像から空白を取り除く画像処理 by 496 (10min)
- 下記のサービスで活用されている様子
小説から本文を抜き出したい…
主なポイントは
- 行間隔
- 段組み
- 文字間隔
どれも自己相関、周波数解析で抽出している様子
JPEGのブロックノイズとはなにか? by harukasan (10min)
- cgo内での処理が多いらしい
- ImageFluxの中身がだいたい知れて良かった
- ストリーム処理でバッファ分をメモリ確保するだけなので効率的
go-thumber に ImageMagick をつなげた話 by yoya (5min)
- go-thumberをスマニューでそのまま活用しようとしたけどforkしてカスタマイズしたのがyoya-thumber
- ImageMagickは処理の前に一度メモリに載せる(=遅いし、マシーンスペックは必要)
- proxyを通してhttp経由で画像変換を提供
- nginxのproxy_cache経由で返却
- 1パツ目のアクセスはキャッシュが無いので負荷がデカイ
- オンデマンドでサムネイル画像を返却する仕組みのツラさも良く分かる…
ImageMagickの中身をすごく詳しくてびっくりした
halide-langについて by saturday06 (5min)
これから使っていきたいライブラリ
C++の画像処理ライブラリだけど言語と言っている by 公式
- Halide
a language for image processing and computational photography
- Halide
- ffmpeg(libswscale)からhalideへ乗り変えを検討
まとめ
- 画像処理深い…😅
- 少し軽いノリで参加させてもらったけど、話がdeep過ぎてあまりついて行けなかった😨
- 画像変換は今自分たちも課題があるけど、自前のコア技術として持つまでのフェーズではないから、OSSやこのあたりのSaaSをうまく活用していきたいなと思った
- ImageMagickってすごく昔からあるけど、取って代わるプロダクトってまだ出てきてないんだなぁーと感じた
- 画像処理系をメインに仕事をしている人はもちろんだけど、傍らでやってるエンジニアにとっても少しでも中身を知るキッカケになって良かった。
- 色々理解出来なかった部分をググって少しでも知ることができて良かった😄
- Streamingで画像処理をする話とか、へーそうやって軽くして多くの処理をしようとしているのかーと思った