CIE94色差計算
CIE94色差計算では、2つのCIELAB色を明度・彩度・色相に分けて補正し、比較します。CIE76の一様なユークリッド距離よりも、基準色の彩度が高くなるほど彩度差と色相差の影響を調整するため、知覚に近い評価が可能です。2組のLab値を入力し、印刷向けの初期値または用途別の係数を指定すると、Delta E 1994と監査に必要なすべての中間値を取得できます。
無料で実行
CIE94が測るものと最初の色が重要な理由
CIE94は、CIELAB色空間における2つの測色値について、明度・彩度・色相を別々の知覚要素として扱い、見た目の差を推定します。CIE76は2つのLab点の直線距離だけを測ります。この方法も有用ですが、幾何学的に同じ距離でも、人の目には同じ大きさの違いとして感じられない場合があります。CIE94では、基準色の彩度に応じて彩度差と色相差の許容度を広げるスケール項を加えています。そのため、計算の透明性と軽さを保ちながら、実務上の合否判定をCIE76より適切に表せることが一般的です。色の順序には意味があります。スケール項は最初の色の彩度を使うため、順序を逆にすると結果が変わることがあります。標準色、目標色、マスター試料、承認済み見本をl1、a1、b1に、測定対象をl2、a2、b2に入力してください。出力される両方の彩度により、この向きを確認でき、自動品質管理での取り違えも防ぎやすくなります。
用途に合った重み係数の選び方
初期設定は、印刷分野で一般的なCIE94の条件です。k_l、k_c、k_hは1、K1は0.045、K2は0.015です。繊維評価では、k_lを2、K1を0.048、K2を0.014とし、k_cとk_hを1のままにする設定がよく使われます。これは色空間の変換ではなく、用途ごとに異なる許容差の優先順位を表すものです。本計算ではすべての係数を指定できるため、試験所の手順、契約条件、社内規格を正確に再現できます。3つの用途別重みは各差分項の除数となるので、必ず0より大きい値にしてください。K1とK2は彩度に依存するスケールの増加を決めるため、0以上でなければなりません。試料を合格させる目的だけで係数を変更しないでください。採用した規約を結果とともに記録し、比較する一連の試料に同じ条件を適用してください。出力には重み、各スケール、正規化項が含まれるため、隠れた初期値に頼らず設定を検証できます。
計算結果の読み方と検証方法
主結果のdelta_e_94は0以上の色差です。0は2つのLab入力がこの計算上で同一であることを示し、値が大きいほどモデル上の隔たりが大きいことを示します。CIE94自体は、すべての用途に共通する合否境界を定めていません。許容範囲は、観察条件、材料、測定器、工程能力、顧客仕様、採用する重み規約によって異なります。しきい値は数式の性質ではなく、品質基準の一部として定めてください。応答には、符号付きのdelta_lとdelta_c、0以上の色相成分、両方の彩度、すべてのスケール、3つの正規化項も含まれます。合計色差が近くても、一方は主に明度差、もう一方は主に色相差というケースを判別できます。入力は有限数で、L*は0から100の範囲でなければなりません。ネットワーク、乱数、時刻、プロファイル参照、暗黙の色変換は使用しないため、同じJSONからは常に同じ丸め済み結果が得られます。RGBや分光値は、先に共通条件のCIELABへ変換してください。
活用例
印刷試料を校正刷りと比較
承認済み校正刷りを基準にして、印刷試料が文書化されたCIE94許容範囲内にあるか数値で確認します。
繊維の色調均一性を評価
繊維向け重みを使って染色試料とマスター見本を比較し、明度・彩度・色相の寄与を個別に保持します。
色品質計算を監査
スケール、正規化項、重みをロット記録に保存し、報告された色差を第三者が再現できるようにします。
よくある質問
CIE94とCIE76はどのように違いますか?
CIE76はLab座標間の直接的なユークリッド距離です。CIE94は明度・彩度・色相を分離し、基準色に応じて彩度と色相を調整するため、多くの目視比較をより適切に表します。
2つの色の順序は結果に影響しますか?
はい。CIE94は最初の色の彩度から彩度と色相のスケールを計算します。標準色または基準色を先に入力してください。順序を逆にすると結果が変わる場合があります。
繊維にはどの設定を使いますか?
一般的な繊維条件はk_l = 2、k_c = 1、k_h = 1、K1 = 0.048、K2 = 0.014です。適用規格が別の値を定めている場合は、その指定に従ってください。
許容できるDelta E 94はいくつですか?
CIE94に共通の許容限界はありません。材料、観察条件、工程、測定器、顧客との合意、重み規約に基づいてしきい値を定めてください。
RGB色や16進カラーを入力できますか?
いいえ。互換性のある基準条件で測定または変換した2組のCIELAB値が必要です。RGBや16進値は、明示的なカラープロファイルによる変換が先に必要です。
APIでの計算料金はいくらですか?
APIリクエストごとに$0.002です。決定論的でネットワークサービスを使わないため、このページのブラウザー上では無料でも実行できます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/color/delta-e-94 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"l1":50,"a1":2.6772,"b1":-79.7751,"l2":50,"a2":0,"b2":-82.7485}'const res = await fetch("https://api.kit.forhosting.com/color/delta-e-94", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"l1": 50,
"a1": 2.6772,
"b1": -79.7751,
"l2": 50,
"a2": 0,
"b2": -82.7485
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/delta-e-94",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"l1": 50,
"a1": 2.6772,
"b1": -79.7751,
"l2": 50,
"a2": 0,
"b2": -82.7485
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/delta-e-94", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"l1":50,"a1":2.6772,"b1":-79.7751,"l2":50,"a2":0,"b2":-82.7485}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"l1":50,"a1":2.6772,"b1":-79.7751,"l2":50,"a2":0,"b2":-82.7485}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/delta-e-94", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"l1": 50,
"a1": 2.6772,
"b1": -79.7751,
"l2": 50,
"a2": 0,
"b2": -82.7485
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.delta_e_94",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |