
بروزرسانی: 08 اردیبهشت 1404
مصاحبه با Björn Ottosson، خالق فضای رنگی Oklab - مجله Smashing
Oklab یک فضای رنگی ادراکی جدید است که در تمام مرورگرهای اصلی ایجاد شده توسط مهندس سوئدی Björn Ottosson پشتیبانی می شود. در این مصاحبه، فیلیپ یاگنشتد به بررسی چگونگی و چرایی خلق Oklab توسط Björn و چگونگی گسترش آن در سراسر اکوسیستم می پردازد.
توجه داشته باشید: مصاحبه اصلی به زبان سوئدی انجام شده و برای تماشا در دسترس است.
درباره بیورن
فیلیپ یاگنشتد: کمی از خودت بگو، بیورن.
بیورن اوتوسون: من سال ها در صنعت بازی روی موتورهای بازی و بازی هایی مانند FIFA، Battlefield و Need for Speed \u200b\u200bکار کردم. من همیشه به فناوری و تعامل آن با هنر علاقه داشتم. من یک مهندس هستم، اما همیشه هر دوی این علایق را داشته ام.
در کار با رنگ
فیلیپ: برای کسی که زیاد به رنگ ها توجه نکرده است، کار کردن با آن ها چیست؟
بیورن: به طور شهودی، رنگ ها می توانند بسیار ساده به نظر برسند. یک رنگ می تواند روشن تر یا تیره تر باشد، می تواند آبی تر یا سبزتر باشد و غیره. هرکسی که دید رنگی معمولی دارد، تجربه نسبتاً مشابهی از رنگ دارد و می توان آن را مدل سازی کرد.
با این حال، روشی که ما رنگ ها را در نرم افزار دستکاری می کنیم، معمولاً با درک انسان از رنگ ها همخوانی ندارد. رایج ترین فضای رنگی sRGB است. HSL نیز وجود دارد که برای انتخاب رنگ رایج است، اما همچنین بر اساس sRGB است.
یکی از مشکلات sRGB این است که در یک گرادیان بین آبی و سفید، در وسط انتقال کمی بنفش می شود. دلیل آن این است که sRGB واقعاً برای تقلید از نحوه دیدن رنگ ها توسط چشم ایجاد نشده است. بلکه بر اساس نحوه کار مانیتورهای CRT است. این بدان معناست که با فرکانس های خاص قرمز، سبز و آبی و همچنین کدگذاری غیرخطی به نام گاما کار می کند. این یک معجزه است که به خوبی کار می کند، اما به درک رنگ مرتبط نیست. هنگام استفاده از این ابزارها، گاهی اوقات نتایج شگفت انگیزی مانند رنگ بنفش در گرادیان دریافت می کنید.

در مورد درک رنگ
فیلیپ: انسان چگونه رنگ را درک می کند؟
بیورن: هنگامی که نور وارد چشم می شود و به شبکیه برخورد می کند، در بسیاری از لایه های نورون ها پردازش می شود و یک تصور ذهنی ایجاد می کند. بعید است که فرآیند ساده و خطی باشد، و اینطور نیست. اما به اندازه کافی باورنکردنی، اکثر مردم هنوز رنگ ها را به طور مشابه درک می کنند.
صدها سال است که مردم در تلاش برای درک رنگ ها بوده اند و چرخ های رنگی و تجسم های مشابه را ایجاد کرده اند. در طول قرن بیستم، تحقیقات و مدل سازی زیادی روی دید رنگی انجام شد. برای مثال، مدل CIE XYZ بر اساس حساسیت سلول های گیرنده نوری ما به فرکانس های مختلف نور است. CIE XYZ هنوز یک فضای رنگی اساسی است که تمام فضاهای رنگی دیگر بر اساس آن است.
همچنین تلاش هایی برای ایجاد مدل های ساده منطبق با ادراک انسان بر اساس XYZ وجود داشت، اما همانطور که مشخص شد، مدل سازی تمام دید رنگی به این روش امکان پذیر نیست. درک رنگ فوق العاده پیچیده است و از جمله به تیره یا روشن بودن آن در اتاق و رنگ پس زمینه آن بستگی دارد. وقتی به یک عکس نگاه می کنید، بستگی به این دارد که فکر می کنید رنگ منبع نور چیست. لباس یک نمونه معمولی از دید رنگی است که بسیار وابسته به زمینه است. تقریباً غیرممکن است که به طور کامل این را مدل کنید.
مدل هایی که سعی می کنند تمام این پیچیدگی ها را در نظر بگیرند نامیده می شوند مدل های ظاهری رنگی. اگرچه آنها کاربردهای زیادی دارند، اما اگر ندانید که بیننده در یک اتاق روشن یا روشن یا سایر شرایط مشاهده است، چندان مفید نیستند.
نکته عجیب این است که بین ابزارهایی که معمولاً استفاده می کنیم - مانند sRGB و HSL - و یافته های این تحقیق بسیار قدیمی تر فاصله وجود دارد. تا حدی، این منطقی است زیرا زمانی که HSL در دهه 1970 توسعه یافت، ما قدرت محاسباتی زیادی نداشتیم، بنابراین ترجمه نسبتاً ساده ای از RGB است. با این حال، از آن زمان تغییر زیادی نکرده است.
فناوری نمایش نیز بهبود یافته است. اکنون بسیاری از نمایشگرها دارای RGB اولیه متفاوتی هستند، به عنوان مثال، قرمزتر، سبز سبزتر، یا آبی آبی تر. sRGB نمی تواند به همه رنگ های موجود در این نمایشگرها برسد. فضای رنگی جدید P3 می تواند، اما بسیار شبیه به sRGB است، فقط کمی گسترده تر است.
در ایجاد Oklab
فیلیپ: پس Oklab چیست و چگونه آن را ایجاد کردید؟
بیورن: وقتی در صنعت بازی کار می کردم، گاهی اوقات می خواستم دستکاری های رنگی ساده ای مانند تیره کردن رنگ یا تغییر رنگ انجام دهم. من در مورد فضاهای رنگی موجود و اینکه چقدر در این کارهای ساده خوب هستند تحقیق کردم و به این نتیجه رسیدم که همه آنها به نوعی مشکل ساز هستند.
بسیاری از مردم در مورد آزمایشگاه CIE می دانند. این کاملاً به درک انسان از رنگ نزدیک است، اما مدیریت رنگ عالی نیست. به عنوان مثال، یک گرادیان بین آبی و سفید در آزمایشگاه CIE بنفش می شود، مشابه در sRGB. برخی از فضاهای رنگی به خوبی رنگ ها را کنترل می کنند اما مسائل دیگری را نیز باید در نظر گرفت.
زمانی که شغل خود را در زمینه بازی ترک کردم و به دنبال آموزش و مشاوره بودم، کمی وقت داشتم تا با این مشکل مقابله کنم. Oklab تلاش من برای یافتن تعادل بهتر است، چیزی شبیه به آزمایشگاه اما "خوب".
من Oklab را بر اساس دو فضای رنگی دیگر، CIECAM16 و IPT قرار دادم. من از پیش بینی روشنایی و اشباع CIECAM16 که یک مدل ظاهری رنگی است، به عنوان هدف استفاده کردم. من در واقع می خواستم از مجموعه داده های مورد استفاده برای ایجاد CIECAM16 استفاده کنم، اما نتوانستم آنها را پیدا کنم.
IPT برای داشتن یکنواختی رنگ بهتر طراحی شده است. در آزمایش هایی، آن ها از مردم خواستند رنگ های روشن و تیره، رنگ های اشباع و غیراشباع را با هم تطبیق دهند، که منجر به مجموعه داده ای شد که رنگ ها، به طور ذهنی، رنگ های یکسانی دارند. IPT چند مشکل دیگر دارد اما اساس رنگ در Oklab است.
با استفاده از این سه مجموعه داده، من تصمیم گرفتم یک فضای رنگی ساده ایجاد کنم که "خوب" باشد. من از رویکردی کاملاً شبیه به IPT استفاده کردم اما آن را با برآوردهای سبکی و اشباع CIECAM16 ترکیب کردم. Oklab به دست آمده هنوز یکنواختی رنگ خوبی دارد اما سبک و اشباع را نیز به خوبی کنترل می کند.
فیلیپ: نام اوکلاب چطور؟ چرا فقط خوبه؟
بیورن: این کمی زبان زدگی و مقداری فروتنی است.
برای وظایفی که در ذهن داشتم، فضاهای رنگی موجود خوب نبودند و هدف من ساختن یکی از این فضاها بود. در عین حال می توان عمیق تر کاوش کرد. اگر دانشگاهی روی این موضوع کار می کرد، می توانست با شرکت کنندگان زیادی مطالعات انجام دهد. برای فضای رنگی که عمدتاً برای استفاده در صفحه نمایش رایانه و تلفن در نظر گرفته شده است، می توانید مطالعات را در محیط های معمولی که از آنها استفاده می شود انجام دهید. می توان عمیق تر رفت.
با این وجود، مجموعه داده هایی را که می توانستم پیدا کنم برداشتم و از آنچه داشتم بهترین استفاده را کردم. هدف این بود که یک مدل بسیار ساده بسازیم که استفاده از آن مناسب باشد. و فکر می کنم مشکلی نیست و بهتر از این نمی توانستم بیابم. من نمی خواستم اسمش را بگذارم Björn Ottosson Lab یا چیزی شبیه آن، بنابراین با Oklab رفتم.
فیلیپ: آیا این نام از یک سنت پیروی می کند که همه چیز را خوب می خواند؟ می دانم که یک قالب تصویر کاملاً خوب نیز وجود دارد.
بیورن: نه، من اینجا به هیچ سنتی عمل نکردم. اوکلاب فقط اسمی بود که به ذهنم رسید.
در مورد پذیرش Oklab
فیلیپ: اوکلاب را زمانی کشف کردم که ناگهان در همه مرورگرها ظاهر شد. چیزها اغلب در وب به کندی حرکت می کنند، اما در این مورد، همه چیز خیلی سریع پیش رفت. چطور شد؟
بیورن: من هم تعجب کردم! من یک پست وبلاگ نوشتم و آن را در توییتر به اشتراک گذاشتم.
من مخاطبین زیادی در صنعت بازی و تعدادی مخاطب در صنعت جلوه های بصری (VFX) دارم. انتظار داشتم افرادی که با سایه زن ها یا جلوه های بصری کار می کنند، این را امتحان کنند، و شاید در برخی بازی ها از آن استفاده شود، شاید به عنوان جلوه ای برای انتقال صاف رنگ.
اما پست وبلاگ بسیار بیشتر از آنچه فکر می کردم پخش شد. در هکر نیوز بود و بسیاری از مردم آن را خواندند.
کد Oklab تنها 10 خط طول دارد، بنابراین بسیاری از کتابخانه های منبع باز آن را پذیرفته اند. همه اینها خیلی سریع اتفاق افتاد.
کریس لیلی از W3C با من تماس گرفت و سوالاتی در مورد اوکلاب از من پرسید. ما کمی در مورد آن بحث کردیم و من توضیح دادم که چگونه کار می کند و چرا آن را ایجاد کردم. او در یک کنفرانس در مورد آن ارائه کرد و سپس برای افزودن آن به CSS تلاش کرد.
فتوشاپ همچنین گرادیان های خود را برای استفاده از Oklab تغییر داد. همه اینها به صورت ارگانیک اتفاق افتاد بدون اینکه مجبور باشم آن را تشویق کنم.
در اوخسل
فیلیپ: در یکی دیگر از مطالب وبلاگ شما دو فضای رنگی دیگر به نام های Okhsv و Okhsl را معرفی کردید. شما قبلاً در مورد HSL صحبت کرده اید، پس Okhsl چیست؟
بیورن: هنگام انتخاب رنگ، HSL یک مزیت بزرگ دارد و آن این است که فضای پارامتر ساده است. هر مقدار 0-360 برای رنگ (H) همراه با هر مقدار 0-1 برای اشباع (S) و روشنایی (L) ترکیبات معتبری هستند و باعث ایجاد رنگ های مختلف روی صفحه می شوند. هندسه HSL یک استوانه است و هیچ راهی وجود ندارد که به طور تصادفی به بیرون از آن سیلندر ختم شود.

در مقابل، Oklab شامل تمام رنگ های فیزیکی ممکن است، اما ترکیبی از مقادیر وجود دارد که در جایی که به رنگ هایی که وجود ندارند، کار نمی کنند. به عنوان مثال، با شروع از رنگ زرد روشن و اشباع در Oklab و چرخش رنگ به آبی، آن رنگ آبی در sRGB وجود ندارد. فقط آبی تیره تر و کمتر اشباع شده وجود دارد. این به این دلیل است که sRGB در Oklab شکل عجیبی دارد، بنابراین به راحتی می توان از آن خارج شد. این امر انتخاب و دستکاری رنگ ها با Oklab یا Oklch را دشوار می کند.

اوخسل تلاشی برای سازش بود. رفتار Oklab را برای رنگ هایی که خیلی اشباع نشده، نزدیک به خاکستری هستند، حفظ می کند، و فراتر از آن، به سمت استوانه ای کشیده می شود که حاوی تمام sRGB است. روش دیگر این است که شکل عجیب sRGB در Oklab به شکل یک استوانه با انتقال نسبتاً صاف کشیده شده است.
نتیجه مشابه HSL است، که در آن تمام پارامترها را می توان به طور مستقل تغییر داد بدون اینکه به خارج از sRGB ختم شود. همچنین Okhsl را پیچیده تر از Oklab می کند. مصالحه های اجتناب ناپذیری برای به دست آوردن چیزی با ویژگی هایی که HSL دارد وجود دارد.
همه چیز با رنگ در مورد مصالحه است. دید رنگ آنقدر پیچیده است که در مورد مصالحه عملی است.
این حوزه ای است که ای کاش تحقیقات بیشتری در آن وجود داشت. اگر من پس زمینه سفید دارم و می خواهم چند رنگ خوب برای قرار دادن آن انتخاب کنم، می توانید فرضیات زیادی داشته باشید. اوخسل خیلی چیزها را حل می کند، اما آیا می توان از این هم بهتر کرد؟
در مورد مصالحه رنگ
فیلیپ: برخی از افرادی که Oklab را امتحان کرده اند می گویند سایه های تیره بسیار زیادی وجود دارد. شما آن را در اوخسل با یک تخمین سبکی جدید تغییر دادید.
بیورن: این به این دلیل است که Oklab نوردهی ثابت است و شرایط مشاهده، مانند رنگ پس زمینه را در نظر نمی گیرد. در وب، معمولاً یک پس زمینه سفید وجود دارد که تشخیص تفاوت بین سیاه و سایر رنگ های تیره را سخت تر می کند. اما اگر به همان گرادیان روی یک پس زمینه سیاه نگاه کنید، تفاوت بیشتر آشکار می شود.
آزمایشگاه CIE این کار را انجام می دهد، و من سعی کردم آن را در Okhsl نیز مدیریت کنم. بنابراین، گرادیان ها در Okhsl در پس زمینه سفید بهتر به نظر می رسند، اما مسائل دیگری در زمینه سیاه وجود خواهد داشت. این همیشه یک سازش است.
و بالاخره…
فیلیپ: سوال آخر: رنگ مورد علاقه شما چیست؟
بیورن: باید بگویم بورگوندی. بورگوندی، سبز تیره و آبی سرمه ای مورد علاقه هستند.
فیلیپ: از وقتی که گذاشتی متشکرم، بیورن. امیدوارم خوانندگان ما چیزی یاد گرفته باشند، و وبلاگ عالی شما را به آنها یادآوری می کنم، جایی که شما در مورد Oklab و Okhsl به عمق بیشتری می پردازید.
بیورن: متشکرم

منبع: https://smashingmagazine.com/2024/10/interview-bjorn-ottosson-creator-oklab-color-space/