darknet預測分類動態庫,數據存儲對接

更多文章參考:自己動手實現darknet預測分類動態庫

數據截取:

CMemoryBase *memory = g_pScanManager->GetCurrentScan()->GetOCTMemory();
 int rWidth = 1024;
 int width = 860;
 int height = 1000;

 BYTE** ppImage = (BYTE**)malloc(sizeof(BYTE*) * 100);
 for (int i = 0; i < 100; i++)
 {
  ppImage[i] = (BYTE*) malloc(width * height);
 }

 for (int i = 0; i < 100; i++)
 {
  for (int h = 0; h < height; h++)
  {
   for(int w = 0; w < width; w++)
   {
    ppImage[i][h * width + w] = memory->GetScanData(i)->OCTData[h * rWidth + w];
   }
  }

 int m_height=860;
 int m_wid = 1000;
 int c=3;
 for (int i = 0; i < m_height; ++i)
 {
	for (int j = 0; j < m_wid; ++j)
	 {
		int iPos = j * c;
		int k = i * m_wid * c + iPos;
		if (c == 3)
		{
		
			mImgData[h][k] = (unsigned char)ppImage[j * m_height + m_height - i - 1];
		 	mImgData[h][k + 1] = (unsigned char)ppImage[j * m_height + m_height - i - 1];
		 	mImgData[h][k + 2] = (unsigned char)ppImage[j * m_height + m_height - i - 1];
		} 
		 	
	}
 }
}

採集存儲到共享內存:

//OCT實際圖像寬度
int nRealWidth = 1024;
int nWidth = 860;
int nHeight =500;
PBYTE buff = m_fnGetOctBufferNextPointer(nHeight, nWidth, 1);  
for (int j = 0; j < nHeight; j++)		
{
	for (int i = 0; i < nWidth; i++)			
	{    		    	
	   buff[j*nWidth + i] = pOCTData[j * nRealWidth + i];
	}
}	

分析:共享內存到mtsd文件

 

發佈了373 篇原創文章 · 獲贊 151 · 訪問量 33萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章