[問題] 彩色圖片轉灰階

看板C_Sharp作者 (111111111111111)時間17年前 (2008/07/15 00:23), 編輯推噓6(6011)
留言17則, 10人參與, 最新討論串1/1
我所使用的方法是 令每個像素的R G B分別等於(R+G+B)/3 感覺上很土法煉鋼 因為這個方法 在圖片很大張的時候,轉換會很慢 還有就是轉換過後的容量會變大 所以想請問各位有沒有比較好的方法將彩色轉為灰階?? 謝謝囉~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.121.155.11

07/15 02:35, , 1F
你是用setpixel才會很慢 改用直接記憶體操作
07/15 02:35, 1F

07/15 11:56, , 2F
記憶體操作,不太懂耶,可以教一下詳細的方法嗎?
07/15 11:56, 2F

07/15 14:35, , 3F
unsafe
07/15 14:35, 3F

07/15 14:59, , 4F
你去msdn找Bitmap的LockBits method有完整的範例..
07/15 14:59, 4F

07/15 15:00, , 5F
你也可以查查 scan0 的相關資料, 做法觀念都一樣..
07/15 15:00, 5F

07/15 16:13, , 6F
你可以參考看看我寫的 3785 那篇
07/15 16:13, 6F

07/15 17:38, , 7F
網路上可以找到完整的範例
07/15 17:38, 7F

07/16 06:33, , 8F
我這邊有一篇文章,專講影像處理的..
07/16 06:33, 8F

07/16 06:33, , 9F
留個e-mail寄到我信箱我把他寄給你吧^^
07/16 06:33, 9F

07/16 14:35, , 10F
嗯用MSDN裡的範例轉換灰階有變快了!
07/16 14:35, 10F

07/16 14:36, , 11F
但是現在想做sobel邊緣偵測 我有用icools的方法
07/16 14:36, 11F

07/16 14:38, , 12F
但是把pixel的資料轉成2維還是要花很久的時間
07/16 14:38, 12F

07/16 15:09, , 13F
喔OK了..我有地方寫錯= =
07/16 15:09, 13F

07/16 15:39, , 14F
用rgb2gray(matlab)再傳回C# 可否?XD
07/16 15:39, 14F

07/16 16:02, , 15F
樓上那樣應該也還是unsafe吧XD 那不如就操作記憶體啊
07/16 16:02, 15F

07/16 16:25, , 16F
http://0rz.tw/644s8 這篇寫得很不錯 大家參考看看
07/16 16:25, 16F

07/16 18:31, , 17F
推這篇...我說的就是這篇@@"只是找不到連結剩下檔案
07/16 18:31, 17F
文章代碼(AID): #18UtroVq (C_Sharp)