作者kangkangtm (111111111111111)
看板C_Sharp
標題[問題] 彩色圖片轉灰階
時間Tue Jul 15 00:23:13 2008
我所使用的方法是
令每個像素的R G B分別等於(R+G+B)/3
感覺上很土法煉鋼
因為這個方法
在圖片很大張的時候,轉換會很慢
還有就是轉換過後的容量會變大
所以想請問各位有沒有比較好的方法將彩色轉為灰階??
謝謝囉~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.121.155.11
1F:推 MRjk:你是用setpixel才會很慢 改用直接記憶體操作 07/15 02:35
2F:→ lsmptt:記憶體操作,不太懂耶,可以教一下詳細的方法嗎? 07/15 11:56
3F:推 cmhuang:unsafe 07/15 14:35
4F:推 cole945:你去msdn找Bitmap的LockBits method有完整的範例.. 07/15 14:59
5F:→ cole945:你也可以查查 scan0 的相關資料, 做法觀念都一樣.. 07/15 15:00
6F:→ icools:你可以參考看看我寫的 3785 那篇 07/15 16:13
7F:→ heyshi:網路上可以找到完整的範例 07/15 17:38
8F:推 hhmmjj:我這邊有一篇文章,專講影像處理的.. 07/16 06:33
9F:→ hhmmjj:留個e-mail寄到我信箱我把他寄給你吧^^ 07/16 06:33
10F:→ kangkangtm:嗯用MSDN裡的範例轉換灰階有變快了! 07/16 14:35
11F:→ kangkangtm:但是現在想做sobel邊緣偵測 我有用icools的方法 07/16 14:36
12F:→ kangkangtm:但是把pixel的資料轉成2維還是要花很久的時間 07/16 14:38
13F:→ kangkangtm:喔OK了..我有地方寫錯= = 07/16 15:09
14F:推 shingoliang:用rgb2gray(matlab)再傳回C# 可否?XD 07/16 15:39
15F:→ cplusplus:樓上那樣應該也還是unsafe吧XD 那不如就操作記憶體啊 07/16 16:02
17F:推 hhmmjj:推這篇...我說的就是這篇@@"只是找不到連結剩下檔案 07/16 18:31