關於部落格
Ajax, Ria, Web2.0, WPF, ActionScript, Flash, FlashLite, Music, Rock, HipHop, Interactive Tech, Software, Physical Computing, Book
音樂、免費軟體、程式設計、設計資源、互動科技、搖滾樂、酷網
  • 35337

    累積人氣

  • 0

    今日人氣

    0

    訂閱人氣

[影像]-運用ActionScript中的threshold做影像去背

前一陣子花了不少時間在研究ActionScript中BitmapData的部份
後來看了許多Image Process的相關資料之後
才比較清楚的知道如何去使用ActionScript中的BitmapData API做影像處理
真的是隔行如隔山,看那些Image Process的資料看的相當吃力
不過最後得到的結論則是不要涉入太深
那個領域的東西實在是太多了~~~學不完
往下看詳細的說明介紹吧~~~

之前花滿多時間在找ActionScript中關於Image Process的資料
找到後來寫得最詳細的還是Adobe的Flash Developer Center中的文章寫得最好
裡面的文章都滿值得參考的~進入正題~
上面這個範例主要的效果就是當按下滑鼠左鍵時
會將影像做去背的動作,並把手掌以外的區域填入綠色
而一開始寫這個範例的時候,是運用for loop的方式去執行getPixelsetPixel的動作
後來仔細看了Webcam Motion Detection這篇文章之後
真的可以說是恍然大悟阿
不多說~直接看這兩種程式的寫法就會暸解拉~

運用for loop做getPixel跟setPixel的動作
for (i=0; i<bitmapPh.width; i++) {
      for (j=0; j<bitmapPh.height; j++) {
            if (bitmapPh.getPixel(i, j)>=0xBBBBBB) {
               bitmapPh.setPixel(i, ,j, 0xFF00FF00);
            }
      }
}


運用threshold執行填色動作
pt = new Point(0, 0);
area = new Rectangle(0, 0, orgPh.width, orgPh.height);
bitmapPh = new BitmapData(orgPh.width, orgPh.height, true);
bitmapPh.threshold(bitmapPh, area, pt, ">=", 0xFFBBBBBB, 0xFF00FF00, 0x00FFFFFF, false);



ActionScript中所提供的threshold方法是以C開發的
因此在效能上當然沒話講啦
大家如果有興趣的話可以參考Webcam Motion Detection這篇文章
寫的相當詳細喔~

相簿設定
標籤設定
相簿狀態