لماذا يشعر Joker بأنه لا يهتم بالخضروات الخضراء؟
لماذا يشعر Joker بالخضرة الخضراء؟
لماذا يشعر Joker بالخضرة الخضراء والأزرق؟جوجللماذا كان Blade Runner يغرق في الشاي والبرتقالة؟
لماذا Blade Runner يغرق في الشاي والبرتقالة؟
لماذا Blade Runner غليظ في الشاي والبرتقالة؟Blade Runnerلماذا يجعل الفيلم يشعر بالراحة والطمأنينة؟
لماذا يجعلك تشعر بالراحة والطمأنينة؟
لماذا يجعل الفيلم يبدو رائعًا ومريعًا؟
ليس من السحر.
هذا ليس سحرًا، إنه لون.
ولكن من يسيطر على الألوان يسيطر على الوزن العاطفي للكاميرا.التصنيع على الألوان هو لغة التصوير في السينما - وسيلة لتشكيل الجوانب، وتسهيل الاهتمام للمرء، وتحديد صيغة قصة.ولكن يمكن أن يكون صعباً ومتناسقاً.ولكن يمكن أن يكون صعباً ومتناسقاً، كما هو الحال في أعمال وونغ كار-واي، فنشير، نولان، أو فيلينوف.ولكن لكي يتحدث هذا اللغز بسهولة، يجب أن تفهم اللغة الأولى.
من أين تبدأ عمل الألوان في الواقع؟ كيف نعرف ما هو الألوان "الحقيقية"؟ وكيف تحول الهدف الإبداعي إلى العمل التقني؟
Spoiler: لا تبدأ مع LUTs أو ملفات. تبدأ مع الأهداف اللون، والتقييم، والبلاطين المختارة بعناية.
تبدأ مع الأهداف الألوان، والتقييم، والخلايا المختارة بعناية
في هذه السلسلة، سنستعرض:
- ما هي تقييم الألوان على المستوى الأكثر أساسية؛
- لماذا الحد من طرازك هو ميزة وليس خطأ؛
- كيف تعمل خرائط الألوان (وماذا يعني ذلك؟)
- وكيفية بناء أداة التقييم الخاصة بك في المتصفح - مع React و بعض الرياضيات البسيطة.
نحن لن نكشف عن ذلك فقط. وسوف تكون قادرة على التجربة، وربما للمرة الأولى في الواقع نرى ما هي التصنيفات اللون التي تم إنشاؤها.
نحن لا نستطيع فقط تفسيرها.نلاحظما هو تقييم الألوان، ولماذا تبدأ مع أهداف الألوان؟
ما هو تقييم الألوان، ولماذا تبدأ مع أهداف الألوان؟تصنيف الألوان هو عملية تعديل وتصنيف صورة لتحقيق لون عجيب محدد، أو تأثير عاطفي، أو معايير تقنية، سواء في الأفلام أو الصورة أو الإنتاج الرقمي، تتضمن التصنيف عادة:
- توازن الإضاءة واللون الأبيض؛
- تصحيح التغيرات الفنية في الألوان؛
- تصحيح نمطًا بصريًا مع التوازن والرموز والألوان.
لكن التقييم ليس فقط عن "تجعلها جميلة"، بل هو عن السيطرة - على المزاج، والتركيز للمرء، واللغة المرئية لجميع القصة.
قبل تطبيق أي نظرة إبداعية ، تحتاج إلى إرسال الصورة إلى حالة نائمة ، مما يعني:
البلد المستقل
-
إصلاح الألوان غير المرغوب فيها (إصلاح الألوان);
-
إصلاح الصورة إلى مساحة الألوان القياسية (مثل Rec.709 أو sRGB);
-
إصلاح المواد من الكاميرات المختلفة إلى خط مبسط متوازن.
إصلاح الألوان غير المرغوب فيها (إصلاح الألوان);
إصلاح الألوان غير المرغوب فيها (إصلاح الألوان);
السيطرة على الصورة إلى مساحة الألوان القياسية (مثل Rec.709 أو sRGB);
السيطرة على الصورة إلى مساحة الألوان القياسية (مثل Rec.709 أو sRGB);
توافق المواد من الكاميرات المختلفة إلى خط مبسط متوازن.
توافق المواد من الكاميرات المختلفة إلى خطة أساسية متوازنة.
And for that, colorists use color targets like the **ColorChecker, ChromaDuMonde,**or other reference charts.
A color target is a chart of color patches with precisely measured values. These values aren’t arbitrary — they’re obtained through spectrophotometric measurements in controlled environments using professional equipment like X-Rite or Konica Minolta spectrophotometers.
القيمة المحددةKonica Minolta spectrophotometers.Konica Minolta spectrophotometers
One of the first widely adopted targets was the Kodak Gray Scale — a strip of neutral gray tones used for exposure control. Later came more advanced charts with full-color patches — like the Macbeth ColorChecker, introduced in 1976 (now known as the X-Rite ColorChecker). It features 24 color swatches designed to represent common real-world colors: human skin, blue sky, green foliage, and more.
Kodak Gray ScaleKodak Gray Scaleماتبيك ColorCheckerX-Rite ColorChecker
بعد ظهور الصورة الرقمية والتلفزيون الرقمي، أصبحت الهدفات الألوان أكثر أهمية.هناك الآن أدوات حيوية لتقييم ليس فقط الكاميرات، ولكن أيضا الشاشات والرسائل والسيارات المحمولة والكل من الأجهزة التي تتعامل مع الألوان.
أخذ ColorChecker من X-Rite ، على سبيل المثال ، يتم قياس كل ملف تحت الإضاءة القياسية (عادةً D65 أو D50) ، مع النتائج المكتوبة في تقييمات CIE XYZ ، وهو نموذج لون مستقل عن جهاز ، ثم يتم تحويل هذه المقياسات إلى تقييمات RGB ، اعتماداً على مساحة لون العمل الخاص بك (مثل sRGB ، Rec.709 ، أو AdobeRGB).
D65D50استراتيجيات CIE XYZقيمة RGBsRGB Rec.709AdobeRGB
وهذا يعني أن المجموعات RGB التي نستخدمها في تطبيقنا ليست فكرة، بل إنها تكوينات رقمية دقيقة من الملفات المعتمدة، التي يتم قياسها بشكل طبيعي.
إذا تم تحديد ملصق الجلد في ColorChecker Classic على [194, 150, 130] في RGB ، فهذه هي الطريقة التي يجب أن تبدو عليها في الظروف المناسبة.
إذا أظهرت الصورة شيء مختلف ، فهذا علامة على إزالة الألوان - وهي نقطة بداية للتصحيح.
The Catch: Color Charts Are Just the Beginning
The Catch: Color Charts Are Just the Beginningأهداف الألوان ضرورية للتقييم - ولكن هذا هو كل ما هو عليه. بدء. لا تتضمن:
أول مرة.- كيف تتصرف الألوان في الخصائص أو الشواطئ؛
- الخصائص الفريدة للفيلم أو الأطباق؛
- أو الهدف الإبداعي خلف نظرة معينة.
In professional tools like DaVinci Resolve or Dehancer, color charts are just step one in a long pipeline. From there, you move into advanced processes like film emulation, tone mapping, grain, halation, bloom, and other stylistic transformations. So it’s critical to understand: a chart is a calibration tool — not a style.
DaVinci ResolveDaVinci ResolveDehancerDehancerتصنيف هو أداة التقييم - وليس نمط.CinePalette: A Minimal Tool for Exploring Color Palettes
CinePalette: أداة صغيرة لاستكشاف الألوانمن أجل إظهار كيفية تأثير اختيار صفحة على صورة، قمنا بتطوير CinePalette - تطبيق ويب بسيط يظهر ما يحدث عندما تقوم بتحديد مساحة الألوان (العمل المعروف باسم خفض صفحة).
ماذا يمكنك القيام به مع CinePalette:
ماذا يمكنك القيام به مع CinePalette:- تسجيل أي صورة؛
- تسجيل صفحة (ColorChecker، Portra، Sepia، وما إلى ذلك)؛
- تسجيل كل مقطع إلى الألوان الأكثر قوة في هذا صفحة؛
- تسجيل الوصفات قبل & بعد،
- تسجيل النتيجة؛
- أو بناء صفحة الخاصة بك من البداية.
كيفية عمل التطبيق
كيف يعمل في الكوديعمل التطبيق بالكامل في المتصفح باستخدام React و Canvas API.الردكاميرا Canvas APICinePalette
نبدأ مع مجموعة من الخلايا المحددة، ولكن المستخدمين يمكنهم أيضا إنشاء وتخزين أنفسهم.خلايا المحددة هي مجموعة من القيم RGB - على سبيل المثال، هذه هي كيف تبدو الخلايا Kodak Portra 400:
Kodak Portra 400"تصنيف 400": [ [ [75, 60, 50], // الضوء [160, 130, 110], // أساطير الجلد [220, 200, 180], // الضوء [60, 100, 80], // الضوء [180, 150, 100] // ناتج ],
"Portra 400": [
[75, 60, 50], // shadows
[160, 130, 110], // skin tones
[220, 200, 180], // highlights
[60, 100, 80], // foliage
[180, 150, 100] // neutral
],
تحدد اللوحة المختارة ما هي الألوان التي "تسمح" بالظهور في الصورة النهائية.
هذه أصبحت لغة المرور للكاميرا - الألوان الأساسية التي تحدد موهبتها وأسلوبها.
عندما يقوم المستخدم بإرسال صورة واختيار صفحة، هذا ما يحدث تحت القفص:
- تصوير الصورة إلى <canvas> مخفية - هذا يوفر لنا الوصول على مستوى الجيل القادم للتلاعب بالبيانات.
- نختار موضوع ImageData، الذي يحتوي على مجموعة من الألوان التي تمثل كل الجيل القادم من قبل أربع قواعد: [R، G، B، A].
- نختار كل الجيل القادم من خلال كل الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الجيل القادم من الج
- تصوير الصورة إلى <canvas> مخفية - هذا يوفر لنا الوصول على مستوى الجيل القادم للتعامل مع البيانات.
تصوير الصورة إلى مخفي <canvas>نحن نختار موضوع ImageData، الذي يحتوي على مجموعة حيث يتم تصنيف كل مقطوع من قبل أربع قيمة: [R، G، B، A]. نحن نختار مصطلح ImageData - نحن نقوم من خلال كل بيكسل، استخراج لون RGB. We loop through every pixel
- لدى كل كيلومتر ، نجد الألوان المرتبطة الأكثر قوة من الخلايا المختارة ، باستخدام المسافة اليكليدية في مساحة RGB - وبدلاً من ذلك ، يتم استبدالها. لدى كل بيكسل ، نجد الألوان المرتبطة الأكثر قوة من الخلايا المختارة
- نضيف CinePalette مع القدرة على اختيار صفحة من صورة التقويم؛
- نضيف استخراجًا تلقائيًا من خرائط الألوان من أي نطاق أو صورة؛
- نضيف التبديل بين RGB وLAB للحصول على توازن أكثر دقة من الواقع؛
- نضيف كيف يعمل المرحلة الألوية - وكيف يمكنك استخدامها في التقييم في العالم الحقيقي.
- we will expand CinePalette with the ability to pick a pallet from a reference image; CinePalette
- add استخراج تلقائي من مجموعة الألوان من أي نطاق أو صورة؛
- إدخال تحويل بين RGB و LAB للحصول على تقييم أكثر دقة من نظري؛ RGB و LAB
- وإزالة كيف يعمل العدالة اللون - وكيف يمكنك استخدامها في التصنيف في العالم الحقيقي. توازن الألوان
أرسل بطاقة شيرلي وحاول تطبيق بطاقات مختلفة - سوف ترى على الفور كيف يتم تشكيل الصورة من خلال اختيار بطاقة.
أساس السحر يقع في ميزة تحليل لكل مقطع منفصل و العثور على الأصلي المرتبط باللون من الخلايا المختارة:
كل كيلومتر واحدأكبر لون متوافقconst findClosestColor = (r, g, b) => { let minDist = Infinity; let closest = [r, g, b]; for (let [pr, pg, pb]) { const dist = Math.sqrt((r - pr) ** 2 + (g - pg) ** 2 + (b - pb) ** 2); if (dist < minDist) { minDist = dist; closest = [pr, pg, pb]; } return closest; }; }const findClosestColor = (r, g, b) => {
let minDist = Infinity;
let closest = [r, g, b];
for (let [pr, pg, pb] of palette) {
const dist = Math.sqrt((r - pr) ** 2 + (g - pg) ** 2 + (b - pb) ** 2);
if (dist < minDist) {
minDist = dist;
closest = [pr, pg, pb];
}
}
return closest;
};
بعد ذلك ، نقوم بتبديل اللون الأصلي للكتروني في ImageData بالطريقة الأكثر تفاؤلاً من الخلايا.
ونكرر هذا - لكل كتروني واحد.
لكل كيلومتر واحدfor (let i = 0; i < data.length; i += 4) { const [r, g, b] = [data[i + 1], data[i + 2]]; const [nr, ng, nb] = findClosestColor(r, g, b); data[i] = nr; data[i + 1] = ng; data[i + 2] = nb; }
for (let i = 0; i < data.length; i += 4) {
const [r, g, b] = [data[i], data[i + 1], data[i + 2]];
const [nr, ng, nb] = findClosestColor(r, g, b);
data[i] = nr;
data[i + 1] = ng;
data[i + 2] = nb;
}
بعد معالجة جميع المكسرات ، نقوم بإعادة إنتاج النتيجة إلى <canvas> و تحويلها إلى صورة باستخدام .toDataURL(). هذا يسمح للمستخدم بزيارة النتيجة على الفور في المتصفح - و تحميل الصورة المصفحة بسهولة واحدة.
شاهد النتيجة على الفور في المتصفح
ctx.putImageData(imageData, 0, 0); setFilteredImage(canvas.toDataURL());
ctx.putImageData(imageData, 0, 0);
setFilteredImage(canvas.toDataURL());
هناك، نحن نستخدم الطول اليكليدي في مساحة RGB - طريقة الكلاسيكية لتقييم مدى "قرب" اثنين من الألوان:
الطريق اليكليدي في الفضاء RGBتقسيم = Math.sqrt((r - pr) ** 2 + (g - pg) ** 2 + (b - pb) ** 2);
const dist = Math.sqrt((r - pr) ** 2 + (g - pg) ** 2 + (b - pb) ** 2);
هنا، (r، g، b) هو لون الكتروني الحالي، و (pr، pg، pb) هو واحد من الألوان في الخلايا. من بين جميع المسافات التي يتم حسابها، نختار الأقصر - القوة أقرب تقييم في الخلايا المختارة.
على أقرب نقطة مشاهدة
هذا النهج سهل الاستخدام، ولكن لديه الحد الأدنى: المساحة RGB لا تتناول كيف تفكر البشر في اللون - على سبيل المثال، نحن أكثر حساسية إلى الأخضر من اللون الأزرق، ويمكن أن تكون الاختلافات في الضوء مشوهة.
المساحة RGB لا تتحدث عن كيفية شعور البشر باللون
نحن نستخدم هذا النهج في CinePalette كوسيلة بسيطة وموضوعية لتثبيت المبادئ الأساسية لخرائط الألوان. ، ومع ذلك ، حتى في شكلها الحالي ، قد تلاحظ أن بعض الألوان يتم تغييرها بطرق تشير إلى غير متوقعة أو "الخلفية".
CinePalette
في الإصدارات المستقبلية، ونحن نتطلع إلى إضافة تحول بين RGB و CIELAB مساحة الألوان - مما يسمح للمستخدمين بمقارنة كيف تؤثر النماذج المختلفة على دقة التصنيف.
RGB و CIELABلماذا يحدث هذا؟
لماذا يهم هذا؟CinePalette يوضح خطوة أساسية ولكن أساسية في تقييم الألوان: تقييم الألوان.تقييم الخلايا "ماذا لو استخدمنا فقط هذه الألوان؟"
لعبة Portra تعطي ألوانًا دافئة وأحاسيسًا. Pro 400 يشعر بالراحة والترفيه. Teal & Orange تعطي ضربة فيلمية عالية النطاق. على عكس أدوات مثل Dehancer أو Resolve، CinePalette لا يثبت الفيزياء الفنية. ولكنها تكتشف الأهمية: color هو أداة لتصميم النسخة.
اللون هو أداة لتصميم النماذج والمسلسل.
ما هو التالي؟
ما هو التالي؟هذه هي البداية فقط.في الأجزاء التالية من سلسلة:
بعد التكيف - وكن مستعدًا لنعلم فقط اللون ، ولكن حقًا see it.
بعد التكيف - وكن مستعدًا ليس فقط لتعلم اللون ، ولكن حقًا see.see