簡體   English   中英

檢測UIImage是淺色還是深色

[英]Detect if UIImage is light or dark

我需要一些幫助來創建一個智能檢測器,該檢測器可以檢測UIImage是亮還是暗,以便我可以在UILabel上使用textColor為相反顏色的黑色或白色。

可以在幾行中完成嗎,還是我需要一個核心的CoreImage操作?

謝謝!

通常看不到圖像是“暗”還是“亮”。 即使將整體圖像視為一個或另一個,您最終放置文本的部分也可能同時具有亮和暗部分。

向隨機圖片添加文本的常見解決方案是向白色文本添加部分透明的黑色背景(或向黑色文本添加部分透明的白色背景)。

如果圖像隨機,則必須檢查所有像素。 您不能只檢查一些像素-作為反例,您可以想象只有一個黑色像素的全白色圖像,而您僅檢查它們。 那會給你不好的結果。

我能想到的最簡單的解決方案是將圖像轉換為灰度,然后遍歷所有像素,計算出平均灰度。 然后,您可以確定平均值是接近白色還是接近黑色。

您還可以在處理之前縮小圖像的比例(將圖像繪制成較小的圖像)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM