読者です 読者をやめる 読者になる 読者になる

Photoshop CC (2015.5)にフォント警察機能(Match Font)が追加された

 今月20日にリリースされたPhotoshop CC 2015.5には機能改善だけではなく、いくつかの新機能が追加されています。

 詳細はAdobe公式をご確認いただくのが正確ですが、その中に"Match Font"なる機能が追加されているのが見つかります。
Photoshop CC new features | More library asset support

Photoshop can now analyze, identify and match Latin fonts from an image or photo, taking the guesswork out of finding the perfect font for your design.

 「Photoshopは画像を分析してフォントを特定することができるようになった」的なことが書いてあるんですが、それって一時期話題になったフォント警察を機械化したってことでは?
 とても真似できない職人技だと思っていたのに、こんなに早く機械化による失職の危機にさらされるなんて、フォント警察かわいそう。

 ということで、もう少し詳細を見て見たいと思います。
 

Match Font

 下記ページの一番下に、"Match Font"の具体的な使い方が動画付きで説明されています。
Get great-looking fonts into your designs | Adobe Photoshop CC tutorials
 動画脇のテキストには、以下の記述があります。

New ways to identify and pick a font
New and updated font features in Photoshop CC can help you find great fonts for your design.
Learn how to identify fonts in a photo or screenshot, and how to find fonts that are similar to a selected font.

 適当に意訳すると、

フォントを特定して選択する新手法
PhotoshopCCのフォント絡みの機能更新と新機能で、素晴らしいフォントが見つけやすくなる。
写真やスクリーンショットからフォントを特定するやり方と、選択されたフォントに似たフォントの見つけ方を習得してね。

 といった感じ。
 実際に解説動画を見るのが解りやすいと思います。
 

使ってみる

 日本語環境では、"Match Font"はそのまま「マッチフォント」としてメニューに表示されています。
f:id:kachine:20160622205405p:plain

 Windowsユーザーにはお馴染のフォントを使った検証サンプル画像を作成し、Match Fontにかけてみたところ、以下の通り。
f:id:kachine:20160622205534g:plain
 驚異の正解率100%。
 いずれも最上位に表示されたフォントで正解です。
 フォント警察リストラ待ったなし…(!?)
 

その他もろもろ

正解率100%ってホントか?
  • 前掲のサンプル画像のような無地背景に、ある程度大きなフォントサイズで書かれた画像の場合は正しく認識
  • フォントサイズが極端に小さい場合は認識精度が落ちる

 

インストールされていないフォントの場合は?
  • PCにインストールされていないフォントでも、TypeKitから入手可能なフォントならサジェストしてくれる
  • TypeKitにもなければ、とりあえず似たフォントをサジェストしてくれる

 

日本語対応は?
  • 日本語のように英数字以外の言語の文字はそもそも認識しない(Webdingsだったり、無理やりな欧文フォントに誤判定される)
    • identify and match Latin fonts(冒頭で引用した新機能紹介文の一部。Latinと限定している)
    • Instead, I have a photo with aligned font in English.(動画約38秒辺り。in Englishと言っている)

 

仕組みは?
  • 公式には明示されていない
  • 恐らく古典的なOCR的機能と、機械学習も使った字形の特徴量検出の複合技?(各フォント毎に1文字ずつ字形の特徴量を抽出したDBを予め用意し、OCR認識した文字コード毎に特徴量の一致度が高い順にサジェストしていると想像される)
    • 日本語含め、非アルファベットな文字全てについて各フォントの特徴量検出するのは難しそう(というか、何を以て一致判定に使える特徴量とするかの定義が困難…だからこその機械学習だろうけど)
    • 全言語の各フォント中の各文字について特徴量を保持すると、特徴量DBだけで巨大なシロモノになり、実用的なパフォーマンスが得られるか疑問

 故に、フォント警察はローカル言語に特化すれば、しばらく失職を延命できるかもしれない。
 



以上。