我正在爲家庭自動化系統中的燈光管理構建一個接口。我設法控制標準開/關和可調光燈爲各種提供商沒有問題,但現在我堅持與RGB光相關的問題。將RGBW顏色轉換爲標準RGB/HSB表示
我目前使用的燈是RGBW燈帶 - 具體來說,我正在使用低成本的RGBW燈:燈由四個LED組成,每個LED都可以單獨控制。
更清楚 - 我正在研究一些c#代碼,它應該檢索當前選擇的顏色並將其顯示在UI中,並使用戶能夠指定燈光的新顏色。爲了設置顏色並檢索它,我必須使用一個命令提供程序,它使我能夠通過Web服務發送和接收命令。
供應商使用RGBW顏色 - 紅色,綠色,藍色和白色的四個組件使用。要在我的界面上表示當前的淺色,我想將服務返回的RGBW顏色轉換爲更標準的RGB/HSB模式。
搜索網頁時,我發現的唯一顏色轉換參考(不包括從rgb到rgbw轉換的C++示例,基於我的理解,必須有一些嚴重錯誤)是本文顯示從HSI到RGBW,這與我所需要的相反:link here
我在尋找一些關於我如何實現這種轉換(或簡單的解釋爲什麼它是不可能的)的見解。據我所知,從RGB到RGBW的轉換是任意的 - 一個RGB值可以表示爲多個RGBW值,但相反的轉換應該是唯一的。還要注意,雖然我使用的是c#,但也可以自由引用其他語言的算法 - 語言不是問題,問題是我不知道進行顏色轉換的數學運算。
感謝您的信息羅伯託。可悲的是,我目前手邊沒有RGBW發光器,但是您提供的信息似乎是我希望找到的最準確的信息。如果/當我將能夠實際測試該研究論文中描述的算法時,將會更新。 – SPArchaeologist