[问题] C# GetPixel与lockbits

楼主: ReplacedToy (六月二十八日)   2019-08-19 12:36:37
小弟有一请教
原先在vb语言中,使用搜寻像素的function都是使用 bitmap.GetPixel 的方法
后来想在C#语言中,重新改写原先写好的程式码。
但是GetPixel本身就有效率上的问题,在google C# + bitmap 的关键字里面可以找到
网络上有另一种撷取像素的方法: lockbits
我自己改写了一个搜寻像素的方法,比对的结果必须每一个像素点都一模一样才算正确
我自己的作法是撷取一张影像,接着上小画家切割部分的影像拿来做比对
却发现 lockbits 撷取的像素点跟 GetPixel 所得到的像素点并没有完全一样
大部分的像素是正确的 但是就有某一小部分的像素点像是被串改了一样
有人在实作 lockbits 也遇到类似的问题吗?
作者: zel (柚植)   2019-08-19 15:02:00
像素的指标阵列每列长是4的倍数width不是4的倍数时会补空像素可能要检查是否真的是取到你要的位置
楼主: ReplacedToy (六月二十八日)   2019-08-19 21:42:00
确实是这样 撷取的影像宽度如果不是4的倍数 搜寻会失败 目前尝试检查所谓的空像素 感谢提点!
作者: kobe8112 (小B)   2019-08-19 23:53:00
窜ㄘㄨㄢˋ改 QQ

Links booklink

Contact Us: admin [ a t ] ucptt.com