有一vc写的动态库函数:int RecognizePlate(LPBYTE pImg,LPVEH veh);
其中 pImg参数描述:全帧或单场采集的彩色图像数据地址,图像数据按原始RGB格式存放,每个像素占3个字节,存放顺序为B,G,R.在描述图像的坐标系中,原点在图像的左上角,y轴方向向下为正。图像的长宽以像素为单位,为4的倍数。
现在假设我有要传入的图片:'c:\car.bmp',怎样才能将car.bmp转换成上诉的pImg传入呢??
其中 pImg参数描述:全帧或单场采集的彩色图像数据地址,图像数据按原始RGB格式存放,每个像素占3个字节,存放顺序为B,G,R.在描述图像的坐标系中,原点在图像的左上角,y轴方向向下为正。图像的长宽以像素为单位,为4的倍数。
现在假设我有要传入的图片:'c:\car.bmp',怎样才能将car.bmp转换成上诉的pImg传入呢??
解决方案 »
- DELPHI窗口最小化和还原事件捕获
- NetVideo_D6D7 这个在delphi7上为什么安装不了哦?
- 一个菜单条添加问题?
- 菜鸟的WideString问题
- 一个不是很复杂的报表问题,用过fastreport的都来看看
- 怎样捕获出错程序代码在哪个单元哪一行?
- 这个功能如何实现啊
- 答谢各位了,关于“ 斑竹求救,过路朋友看看“ 给分贴,凡是回答过问题的来接分
- 用過dxDBGrid和dxComponentPrinter的朋友請進,如何用這二個控件進行打印時打印出總匯總和按頁匯總
- 谁能回答Tshape 从 Tgraphiccontrol 继承而来,而Tshape却没有canvas属性?
- 关闭窗口时发生异常的问题,UP有分
- 源代码编辑器的问题??
pData,pTemp : LPBYTE;
P : PByteArray;
bmp : TBitmap;
w,h,i : Integer;
begin
bmp:= TBitmap.Create;
bmp.LoadFromFile('c:\car.bmp');
bmp.PixelFormat := pf24bit;
w := bmp.Width;
h := bmp.height; pData := AllocMem( w * h * 3 );// 宽以像素为单位,为4的倍数,不用补0了
pTemp := pData; for i := 0 to BitMap.Height -1 do
begin
P := BitMap.ScanLine[i];
Move( p^, pTemp^, w * 3 );
Inc( pTemp, w * 3 );
end;
//pData就是你要的pImg;
end;