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

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

之前花滿多時間在找ActionScript中關於Image Processing的資料
找到後來寫得最詳細的還是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這篇文章
寫的相當詳細喔~

標籤:, ,

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s

%d 位部落客按了讚: