|
用vc6寫的一個簡易串口工具,可以通過串口輸入的數據(如: 一個像素點(0x12,0xf0)(0x13,0x13) )生成保存圖片到程序目錄下格式:320*240 ,160*120,80*60都可以
數據多了電腦容易卡死,可能是vc串口模塊占用CPU導致
若是有需要會貼上代碼
串口傳圖工具.rar
(6.18 MB, 下載次數: 13)
2023-3-13 12:51 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
//********************遍歷逐個像素改變圖像******************
UpdateData(TRUE); //更新所有編輯框的數據,存入變量
CString imgstr;
for(int y=0;y<m_height;y++) //y<src->height
{
unsigned char *bslImgData = (unsigned char *)(src->imageData+y*src->widthStep); //圖像src第y行
for(int x=0;x<m_width;x++) //圖像第x列 src->width
imgstr+=bslImgData[3*x+0]/2;
}
m_com.SetOutput(COleVariant(imgstr)); //將字符串發送出去,因是char型,單字節的值不大于127(0x7f);
imgstr.Empty(); //清空數據
cvDestroyWindow("disp");
}
}
//********************保存圖像******************
void CMyDlg::OnSaveimg()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE); //更新所有編輯框的數據,存入變量
IplImage *img = cvCreateImage(cvSize(m_width,m_height),8,3); //默認為三通道圖像寬100,高108
next=0;
CByteArray hexdata;
int len = String2Hex(m_recmsg, hexdata);
m_recmsg.Empty(); //清空接收緩存
SetDlgItemText(IDC_RECMSG,m_recmsg); //清空接收框
BYTE temp=0,temp2=0;
for(int v=0;v<img->height;v++)
{
unsigned char *imgdat = (unsigned char *)(img->imageData+v*img->widthStep); //圖像img第y行
for(int w=0;w<img->width;w++) //圖像第x列
{//接收RGB565數據,數據格式為2byte數據,分別是5位b,6位g,5位r,共同組成
imgdat[w*3+0] = savimg[next]&0xf8; //取rgb565的r紅色
imgdat[w*3+1] =(savimg[next]&0x07)<<5;
next++;
imgdat[w*3+1] |=(savimg[next]&0xe0)>>3; //取rgb565中間b綠色
imgdat[w*3+2] = (savimg[next]&0x1f)<<3; //取rgb565的b藍色
//imgdat[w*3+0] = imgdat[w*3+2] = imgdat[w*3+1]; 取藍色作為灰圖顯示
next++;
if(len==next)break;
}
}
savimg.Empty(); //清空數據
//*********************獲取系統時間保存圖片****************
CTime time;
char szTime[100];
time = CTime::GetCurrentTime();
sprintf(szTime,"%4d%.2d%.2d%.2d%.2d%.2d%s",time.GetYear(),time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond(),".jpg");
cvSaveImage(szTime,img); //保存串口收到的圖像
AfxMessageBox("保存成功!");
cvNamedWindow("disp");
cvShowImage("disp",img);
cvWaitKey(0);
cvDestroyWindow("disp");
}
|
-
20181226174204.jpg
(7.76 KB, 下載次數: 144)
下載附件
2023-3-13 19:55 上傳
ov7670上傳數據生成的圖片
-
-
源碼.rar
2023-3-13 19:53 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
3.82 KB, 下載次數: 12, 下載積分: 黑幣 -5
|