2019-01-01から1年間の記事一覧
1. 背景と目的 とある事情により数万~数十万個の3次方程式を解くことになった。 世の中には方程式の解を求めてくれる便利なライブラリがあるため、それを利用して解くことにした。 最初に練習として数百個の3次方程式を解いたところ、一部の式において筆者…
背景 これまで画像に 3DLUT を適用する際は外部ツール(DaVinci Resolve, Nuke) を使用してきた。しかし毎回外部ツールを起動するのは面倒だったので Python上 で 3DLUT を適用する環境を構築することにした。ついでに 1DLUT の環境も構築できないか検討した…
背景 筆者はこれまで画像データの読み書きは OpenCV または OpenImageIO の Python用Bindings を叩く自作のラッパーを作って行っていた。が、Color Science for Python に良い感じの関数があったので、これを使ってみることにした。 colour.readthedocs.io …
1. 背景 前回の記事 で YouTube が行っている HDR to SDR 変換をエミュレーションする 3DLUT の作成に成功した。これにより、HDR動画を YouTube へアップロードする前に SDR 変換のプレビューが出来るようになった。 その一方で、色々とコンテンツを弄ってい…
背景 YouTube に HDR動画をアップロードすると、SDRデバイス向けにサーバー側で自動的に HDR to SDR 変換が行われる。この変換のアルゴリズムは公開されていないため、投稿者が SDR動画を目にするのは投稿後に限定されてしまう。投稿後にしか SDRの動画を確…
目的 Linear のデータに 3DLUT を適用する際は Shaper 1DLUT が必要であることを示す。 背景 過去記事で 自分は以下の記述をした。 一般に Linear のデータに対して 3DLUT を適用する場合は、低階調の精度低下を防ぐために Shaper と呼ばれる 1DLUT を適用す…
目的 3x3 の Matrix を使用した単純な変換な色域変換を行うと、変換先の色域によっては(※)色域のクリッピングが生じて想定外の色相のズレが生じることを図で書く。 ※BT.2020 のような広色域から BT.709 のような狭い色域に変換した場合など 背景 前回の記事…
背景 以前、Pixel 3a 購入記念にスマホやタブレットの HDR の 実力を調べる簡単なテストパターンを作った。 www.youtube.com その応用で、WCG(Wide Color Gamut) の実力を調べるパターンを作った。 まだまだ改良すべき点は多いが、ひとまず第一弾が出来たの…
目的 Turbo[1] を使って遊ぶ 題材として HDR10 画像の輝度マップを作成してみる 背景 Google AI Blog にて Turbo という Rainbow Colormap が発表された。 面白そうなので遊ぶことにした。 ai.googleblog.com 結論 Turbo で遊んだ。楽しかった(小並感)。 適…
1. 目的 HDR(※1) to SDR 変換には大きく分けて 4つの Step があることを紹介する 筆者が 以前の記事 で作成した 3DLUT は一部の Step を省略した簡略型であり絵が破綻することを示す trev16.hatenablog.com ※1 本記事で扱う HDR 信号はコンシューマ向けの HD…
1. 目的 3DLUTデータの作り方を簡単に解説する。例として HDR(※) のデータを SDR に変換する 3DLUT を作成する。 なお、本記事は 3DLUT の作り方に特化させたため原理などの基礎的な情報は省略している。3DLUT の基礎的な知識は 富士フィルムさんの資料[1]を…
目的 Dolby Cinema に使われている Output Transform の特性を軽く調べる 具体的には Linear なグレースケールを入力した時の出力特性を調べる。 背景 HOTSHOT の Dolby Cinema とは何か? を読んでいたところ、以下の記述が目に留まった[1]。 今回ハリウッ…
目的 ACES の Linear to Log2 変換を理解する 背景 知的欲求を満たすため ACES2065-1 のデータに RRT+ODT を適用する 3DLUT をカスタムで作ることになった。 一般に Linear のデータに対して 3DLUT を適用する場合は、低階調の精度低下を防ぐために[1] shape…
1. 目的 Primary Colors を色域変換すると Primary Colors で無くなることを確認する(※1) 確認の際の可視化方法を工夫して少しでも分かりやすくする。 ※1例:Red を BT.709 → BT.2020 に変換すると、(1023, 0, 0) → (642, 71, 17) となり、Rチャネル以外にも…
目的 ACES の RRT+ODT を任意の画像に適用できる環境を構築する。 背景 OCIO について色々と勉強していると、NUKE と DaVinci Resolve で RRT + ODT の結果が異なることが判明した。 この原因を詳しく調べるためには、NUKE, DaVinci Resolve に依存しない Re…
1. 目的 ColorCheckerのRGB値を分光反射率(spectral reflectance)データから求める Chromatic Adaptation や「新しいXYZ表色系」の簡単な実験をする(これは別記事にする予定) 2. 背景 色彩工学の理解を深めたかった。なんとなく理論は知っていたが、実際に…
目的 CIE 1931 表色系の等色関数に関して以下の疑問点を解決する 正式な等色関数の値はどのドキュメントに記載されているのか? 波長幅は 1nm と 5nm の2種類があるが、なぜ2種類あるのか? D光源(※)に関して以下の疑問点を解決する 計算に使う固有ベクトル …
1. 目的 OpenColorIO(以後、OCIOと表記する) の Config ファイルを作成する ファイル作成で個人的に苦労した点をメモとして残す 2. 背景 OCIO の名前は数年前から目にしており何となく気になっていた Nuke で HDRの勉強をする際に Nuke標準の Color Manage…
目的 Davinci Resolve 16 で新規追加となった Astrodesign A-Log の特性をプロットする。 結論 A-Log の特性をプロットした結果を図1に示す。ARRI LogC と SONY S-Log3 の中間くらいの特性の模様。 図1 A-Log をプロットした結果 感想 DJI の D-Log をプロッ…
目的 Davinci Resolve16 の Project Settings --> Color Management での変更点を確認する。 結論 Color Space と Gamma で追加&削除があった。 ColorSpace に関する変更 追加 AstroDesign Blackmagic Design Video Gamut Gen 4 Blackmagic Design Wide Gam…
目的 YCbCrの係数誤り(※)が発生した場合、その誤りに気づけるテストパターンを作成する。 作成したテストパターンを用いて実際にYCbCrの係数誤りを検出してみる ※詳細は前回の記事を参照 結論 YCbCrの係数誤りを判別するテストパターン作成に成功した。作成…
目的 YouTubeの動画はSDRレンジでもChrome等のカラーマネージメント対応ブラウザで再生するとカラーマネージメントされることを確認する。 ソースの画像用意 コレを使って生成。 BT.2020色域のColorChecker 動画作成 ffmpeg.exe -loop 1 -i "ColorChecker_Al…
目的 YCbCr変換されたコンテンツは扱いを誤ると画質劣化が生じることを示す(※1)。 ※1 本検証は、不幸な条件が重なった状況を想定したものです。ツールと機材を正しく扱っていれば、このような画質劣化が発生するケースは非常に少ないと考えます。 背景 RGB =…
その1 その2 以上。
目的 RGB --> YCbCr --> RGB の変換で色数がどれだけ減るかを調べる。 背景 YCbCr変換[1]、および Chroma Subsampling[2] による情報圧縮は大変素晴らしい技術である。視覚的な情報のロスを抑えた上でデータを大幅に削減することが出来るため、我々は様々な…
目的 世の中では ARRI Log C、RED Log3G10、SONY S-Log3 など様々な Logカーブが提案されている。 これらの OETF の相互変換を行うために、各 Logカーブの Code Value と絶対輝度の対応関係を決定する。 Code Value と絶対輝度の対応関係が明確になれば絶対…
目的 以下の Camera Log(※) の OETF/EOTF の実装 DJI の D-Log[1] FUJIFILM の F-Log[2] Nikon の N-Log[3] 比較用のまとめ図のプロット ※自分が Camera Log と呼んでいるだけ。正式な呼称ではない。 背景 ここ数年、カメラメーカー各社はオリジナルの Camer…
目的 アナログ放送時代のガンマ補正はCRTの逆補正の為だけの存在ではなく、ノイズの均一化という役割もあったことを示す。 背景 Color Science に対する理解を深める上で「ガンマ補正」を正しく理解することは必要不可欠である。 幸いなことにガンマ補正に関…