• 大小: 17.75MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-06-19
  • 语言: 其他
  • 标签: opencv  

资源简介

opencv的单目标定API已经二次封装,内部有使用和说明文档方便使用和学习

资源截图

代码片段和文件信息



#include “ANN.h“

JY_ANN::JY_ANN()
{
//JY_Class = 0;

}


JY_ANN::JY_ANN(unsigned long Samples unsigned short Class unsigned int Dims)
{

}

JY_ANN::~JY_ANN()
{
}
/*********************  JY_ANN  *****************************
函 数 名:LoadLabes
功    能:学习监督数组进行装载,每一行对应一个图片
参    数:NClass——图片分类标志
  NSamples——装载量
  LabesDatas——装载数组
  AllClass——图片总类别
  BSamples——装载起始位
返 回 值:void
备    注:
*************************************************************/
void JY_ANN::LoadLabes(unsigned short NClass unsigned long NSamples int* LabesDatas unsigned int AllClass unsigned long BSamples)
{
unsigned long Samples = NSamples + BSamples;
for (long i = BSamples; i < Samples; i++)
*(LabesDatas + i * 9 + NClass) = 1;
}
/*********************  JY_ANN  *****************************
函 数 名:LoadImage
功    能:装载训练库
参    数: AllSamples——装载图片总量
TrainDatas——装载训练数组
nPix——装载像素量
DirName——装载文件夹名称
CoreMode——训练内核
CoreSize——训练内核大小
返 回 值:void
备    注:
*************************************************************/
bool JY_ANN::LoadImage(unsigned long AllSamples int* TrainDatas int nPix string DirName int CoreMode int CoreSize)
{
string dir_path = DirName;
Directory dir;
vector fileNames = dir.GetListFiles(dir_path “*.jpg“ false);

for (uint64 i = 0; i < fileNames.size(); i++)
{
int pix = 0;
//get image name    
string fileName = fileNames[i];
string fileFullName = dir_path + fileName;

//load image and image bw  
Mat srcImg = imread(fileFullName.c_str());
cvtColor(srcImg srcImg CV_BGR2GRAY);
threshold(srcImg srcImg 0 255 THRESH_BINARY | CV_THRESH_OTSU);

cout << CoreMode << “ to “<< fileFullName << endl;
convolution(fileFullName.c_str() (TrainDatas + i * nPix) CoreMode CoreSize);
}
return 0;
}


/*********************  JY_ANN  *****************************
函 数 名:convolution
功    能:卷积运算函数
参    数:
返 回 值:void
备    注:
*************************************************************/
void JY_ANN::convolution(string ImageName int* OutputDatas int CoreMode int CoreSize)
{
Mat srcImg = imread(ImageName);
cvtColor(srcImg srcImg CV_BGR2GRAY); //图像灰度化
threshold(srcImg srcImg 0 255 THRESH_BINARY | CV_THRESH_OTSU); //图像二值化

uchar* pxvec;
int pix = 0;
if (CoreMode == 0)
{
for (int k = 0; k < srcImg.rows; k++)
{
pxvec = srcImg.ptr(k); //读取图片行数据
for (int j = 0; j < srcImg.cols; j++)
{
*(OutputDatas + (pix++)) = pxvec[j] / 255; //

}
}
}
else                            //CoreMode != 0 系统执行卷积计算
{
/********************建立缓存数组****************/
int** Train;
Train = new int *[srcImg.rows];
for (int i = 0; i < srcImg.rows; i++)
Train[i] = new int[srcImg.cols];

/*********************装载图片数据到缓存数组******/
for (int k = 0; k < srcImg.rows; k++)
{
pxvec = srcImg.ptr(k);
for (int j = 0; j < srcImg.cols; j++)
Train[k][j] = pxvec[j] / 255;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件           0  2018-08-16 17:15  readme.txt
     目录           0  2018-08-16 17:14  01OneCamre\
     目录           0  2018-08-16 17:14  01OneCamre\.vs\
     目录           0  2018-08-16 17:14  01OneCamre\.vs\Build_ANN\
     目录           0  2018-08-16 17:14  01OneCamre\.vs\Build_ANN\v14\
     文件       51200  2018-08-16 17:14  01OneCamre\.vs\Build_ANN\v14\.suo
     目录           0  2018-08-16 17:14  01OneCamre\Build_ANN\
     文件        5411  2018-07-20 16:00  01OneCamre\Build_ANN\ANN.cpp
     文件         721  2018-07-20 14:05  01OneCamre\Build_ANN\ANN.h
     文件     2547640  2018-07-20 15:32  01OneCamre\Build_ANN\ANN.xml
     文件        9976  2018-08-07 15:09  01OneCamre\Build_ANN\Build_ANN.vcxproj
     文件        1430  2018-08-07 15:09  01OneCamre\Build_ANN\Build_ANN.vcxproj.filters
     文件         165  2018-07-20 11:29  01OneCamre\Build_ANN\Build_ANN.vcxproj.user
     文件         238  2018-08-07 17:04  01OneCamre\Build_ANN\Camera.txt
     文件         549  2018-08-07 17:04  01OneCamre\Build_ANN\Camera.xml
     文件        6117  2018-08-16 15:45  01OneCamre\Build_ANN\CameraCalibrate.cpp
     文件        1830  2018-08-16 15:45  01OneCamre\Build_ANN\CameraCalibrate.h
     文件         490  2018-08-07 17:04  01OneCamre\Build_ANN\CameraRES.txt
     目录           0  2018-08-16 17:14  01OneCamre\Build_ANN\Debug\
     文件      306026  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\ANN.obj
     文件        1069  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\Build_ANN.log
     目录           0  2018-08-16 17:14  01OneCamre\Build_ANN\Debug\Build_ANN.tlog\
     文件         201  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\Build_ANN.tlog\Build_ANN.lastbuildstate
     文件        3666  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\Build_ANN.tlog\CL.command.1.tlog
     文件      110642  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\Build_ANN.tlog\CL.read.1.tlog
     文件        3744  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\Build_ANN.tlog\CL.write.1.tlog
     文件        6442  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\Build_ANN.tlog\link.command.1.tlog
     文件       15462  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\Build_ANN.tlog\link.read.1.tlog
     文件        1486  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\Build_ANN.tlog\link.write.1.tlog
     文件      306598  2018-07-20 12:19  01OneCamre\Build_ANN\Debug\ann.obj.enc
     文件      368159  2018-07-20 18:02  01OneCamre\Build_ANN\Debug\main.obj
............此处省略73个文件信息

评论

共有 条评论