圖片擁有大量像素,擁有大量RGB值。分析大量數據的學問,就是統計學。專家經常運用統計學分析圖片。其中最基礎的統計學工具,就是「直方圖」。
很多人討厭數學,聽到統計學就頭痛,看到直方圖就昏倒。可是呢,對於程式設計師來說,直方圖其實只是「統計出現次數」罷了。
舉例來說,統計每一種R值的出現次數:R=0的像素出現0次、R=1的像素出現0次、……、R=255的像素出現76次。這些出現次數,畫成圖片,就是R值的直方圖了。本題不需要畫成圖片,只需要印出數字。
一張圖片:兩個整數 W H (1 <= W, H <= 256),是圖片的寬和高;接下來的 H 行,每行有 W*3 個整數,是每個像素的 RGB 值 (0 <= R, G, B <= 255)。
總共四行,分別是四個直方圖,R值、G值、B值、亮度的直方圖。亮度定義為 round((R+G+B)/3)。
一個直方圖,包含256個整數,每個整數之間以一個空白鍵隔開。
1 1 1 2 3
0 1 0 0 0 0 0 0 0 0 0 0 0 0 (後面省略) 0 0 1 0 0 0 0 0 0 0 0 0 0 0 (後面省略) 0 0 0 1 0 0 0 0 0 0 0 0 0 0 (後面省略) 0 0 1 0 0 0 0 0 0 0 0 0 0 0 (後面省略)
1. 如果不熟悉RGB值和亮度,可以先試試看「b422: Colorful Life and Monochromatic Life」。
2. 學術上,此觀念稱作 Image Histogram。
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
16867 | freedom50199 ... (帥氣魔方生) | b459 | 820 | 2019-02-15 00:46 | |
12551 | d2513850 (林勇智) | b459 | 1077 | 2017-08-11 12:39 |