[問題] C# GetPixel與lockbits

看板C_Sharp作者 (失戀六月)時間5年前 (2019/08/19 12:36), 編輯推噓1(105)
留言6則, 3人參與, 5年前最新討論串1/1
小弟有一請教 原先在vb語言中,使用搜尋像素的function都是使用 bitmap.GetPixel 的方法 後來想在C#語言中,重新改寫原先寫好的程式碼。 但是GetPixel本身就有效率上的問題,在google C# + bitmap 的關鍵字裡面可以找到 網路上有另一種擷取像素的方法: lockbits 我自己改寫了一個搜尋像素的方法,比對的結果必須每一個像素點都一模一樣才算正確 我自己的作法是擷取一張影像,接著上小畫家切割部分的影像拿來做比對 卻發現 lockbits 擷取的像素點跟 GetPixel 所得到的像素點並沒有完全一樣 大部分的像素是正確的 但是就有某一小部分的像素點像是被串改了一樣 有人在實作 lockbits 也遇到類似的問題嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.248.241.247 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1566189399.A.ED5.html

08/19 15:02, 5年前 , 1F
像素的指標陣列每列長是4的倍數
08/19 15:02, 1F

08/19 15:03, 5年前 , 2F
width不是4的倍數時會補空像素
08/19 15:03, 2F

08/19 15:04, 5年前 , 3F
可能要檢查是否真的是取到你要的位置
08/19 15:04, 3F

08/19 21:42, 5年前 , 4F
確實是這樣 擷取的影像寬度如果不是4的倍數 搜尋會
08/19 21:42, 4F

08/19 21:43, 5年前 , 5F
失敗 目前嘗試檢查所謂的空像素 感謝提點!
08/19 21:43, 5F

08/19 23:53, 5年前 , 6F
竄ㄘㄨㄢˋ改 QQ
08/19 23:53, 6F
文章代碼(AID): #1TMYTNxL (C_Sharp)