2012年10月18日 星期四

99360275 胡斯穎


計算紅色值

計算綠色值

計算藍色值

累積直方圖

測試Histogram

勉強可以辨識出東西
 
 
  這次作業要求製作出能夠分析圖片RGB值並且可以將對比拉高的小程式,由於整個暑假都在使用Eclipse,導致一開始對BCB有種陌生感,周二到教室實際操作了XE2版本,找回了一些些的感覺。
  一開始開啟檔案部分還算輕鬆愜意,接下來便是Historgram的撰寫,範例程式一開始一堆陣列就把我搞得很模糊,經過一番研究才看懂那些陣列各自的功能。
       for (i=0;i<iImageHeight;i++)
        {
        bPtrImage = (Byte *)Image1->Picture->Bitmap->ScanLine[i];
        for (j=0;j<iImageWidth;j++)
            for (k=0;k<3;k++)
                iHistogram[k][bPtrImage[j*3+k]]++;
        }
  一開始最不懂的地方就是ScanLine是做什麼用的,詢問同學之後才知道是取得圖片的每個pixel的資訊,再將他放到histogram陣列中。之後在以histogram除以圖片的像素大小取得histogramradio,接著在做累積的動作。
 
  RGB三個直方圖的選項都是使用同樣的方法,也順便學會了該如何使用程式畫出線段(方法類似之前黃世育老師教的processing)。
 
  了解了這次程式碼後,不只對圖片有了更伸入的了解,也重新溫習了BCB的使用,只是老師如果沒意外外流程式,我認為要寫出來可能要花一段時間呢。
  

沒有留言:

張貼留言