今天给各位分享c语言识别图片中的二维码的知识,其中也会对二维码识别库 c语言进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、linux下开发二维码识别器,用C语言,求大神指点2、如何用C语言实现显示二维码3、C语言或C++编写二维码的解码部分详细的源代码及说明?4、有什么方法能用C#对二维码图片识别
linux下开发二维码识别器,用C语言,求大神指点
你这是要识别桌面上的二维码还是通过摄像头识别二维码
如果是桌面上的
linux C语言去做这个识别二维码,这个貌似难度有太大。而且很难找到资料的。
有时候要知道变通,你为什么不用java的jar库去做识别呢,而且很多的现成资料可以查看,
如果你非得用C去做,那么建议你查询一下libqrencode 这个用C写的库
如何用C语言实现显示二维码
int Fb_QrDisp(int iPenX,int iPenY,QRcode*pQRcode)
{
T_PixelDatasg_tOriginPixelDatas;
T_PixelDatasg_tZoomPixelDatas;
//intiZoom;
inti;
g_tOriginPixelDatas.iWidth= pQRcode-width;
g_tOriginPixelDatas.iHeight=pQRcode-width;
g_tOriginPixelDatas.iLineBytes=g_tOriginPixelDatas.iWidth;
g_tOriginPixelDatas.aucPixelDatas= pQRcode-data;
/*
if(pQRcode-version = 1)
{
iZoom= 2;
}
else
{
iZoom= 2;
}
g_tZoomPixelDatas.iWidth = pQRcode-width*iZoom;
g_tZoomPixelDatas.iHeight=pQRcode-width*iZoom;
g_tZoomPixelDatas.iLineBytes=g_tZoomPixelDatas.iWidth;
g_tZoomPixelDatas.aucPixelDatas= malloc(g_tZoomPixelDatas.iWidth*\
g_tZoomPixelDatas.iHeight);
if(g_tZoomPixelDatas.aucPixelDatas== NULL)
{
printf(“g_tZoomPixelDatas-aucPixelDatasmalloc failed\n”);
return-1;
}
PicZoom(g_tOriginPixelDatas,g_tZoomPixelDatas);
#if 0
printf(“g_tZoomPixelDatas.iWidth=%d,g_tZoomPixelDatas.iHeight=%d\n”,\
g_tZoomPixelDatas.iWidth,g_tZoomPixelDatas.iHeight);
for(i=0;i(g_tZoomPixelDatas.iWidth*g_tZoomPixelDatas.iHeight);i++)
{
printf(“0x%x,”,g_tZoomPixelDatas.aucPixelDatas[i]);
}
printf(“\n”);
#endif
*/
Disp_FixelPic(iPenX,iPenY,g_tZoomPixelDatas);
return 0;
}
需要使用Qrcode
C语言或C++编写二维码的解码部分详细的源代码及说明?
1、二维码有很多种标准,可以控制存储数据的信息量,也可以控制容错的数据量[使得部分污损的二维码可以被正常读取。通常的做法是调用二维码设计方提供的组件,如果是自己生成二维码,应该可以生成可以看起来很像的东西。
2、例程:
pre name=”code” class=”cpp”int Fb_QrDisp(int iPenX,int iPenY,QRcode*pQRcode)
{
T_PixelDatasg_tOriginPixelDatas;
T_PixelDatasg_tZoomPixelDatas;
//intiZoom;
inti;
g_tOriginPixelDatas.iWidth= pQRcode-width;
g_tOriginPixelDatas.iHeight=pQRcode-width;
g_tOriginPixelDatas.iLineBytes=g_tOriginPixelDatas.iWidth;
g_tOriginPixelDatas.aucPixelDatas= pQRcode-data;
/*
if(pQRcode-version = 1)
{
iZoom= 2;
}
else
{
iZoom= 2;
}
g_tZoomPixelDatas.iWidth = pQRcode-width*iZoom;
g_tZoomPixelDatas.iHeight=pQRcode-width*iZoom;
g_tZoomPixelDatas.iLineBytes=g_tZoomPixelDatas.iWidth;
g_tZoomPixelDatas.aucPixelDatas= malloc(g_tZoomPixelDatas.iWidth* g_tZoomPixelDatas.iHeight);
if(g_tZoomPixelDatas.aucPixelDatas== NULL)
{
printf(“g_tZoomPixelDatas-aucPixelDatasmalloc failed\n”);
return-1;
}
PicZoom(g_tOriginPixelDatas,g_tZoomPixelDatas);
#if 0
printf(“g_tZoomPixelDatas.iWidth=%d,g_tZoomPixelDatas.iHeight=%d\n”, g_tZoomPixelDatas.iWidth,g_tZoomPixelDatas.iHeight);
for(i=0;i(g_tZoomPixelDatas.iWidth*g_tZoomPixelDatas.iHeight);i++)
{
printf(“0x%x,”,g_tZoomPixelDatas.aucPixelDatas[i]);
}
printf(“\n”);
#endif
*/
Disp_FixelPic(iPenX,iPenY,g_tZoomPixelDatas);
return 0;
}
因为stmf429运行起来后内存不够,这里不用申请内存再扩充放大二维码数据的方法,而是直接描点。所以这里注释掉了放大部分。
有什么方法能用C#对二维码图片识别
引用ThoughtWorks.QRCode.dll这个文件,。
然后写方法
using ThoughtWorks.QRCode.Codec;
using ThoughtWorks.QRCode.Codec.Data;
using ThoughtWorks.QRCode.Codec.Util;
QRCodeDecoder decoder = new QRCodeDecoder();
String decodedString = decoder.decode(new QRCodeBitmapImage(new Bitmap(pb_view.Image)));//pb_view.Image图片PictureBox控件
txtEncodeData.Text = decodedString;//获取到了
关于c语言识别图片中的二维码和二维码识别库 c语言的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。