资源简介
用恒虚警检测算法CFAR检测器自动检测出舰船目标,并提供的实验数据图像

代码片段和文件信息
#include “mex.h“ /* Always include this */
#include “math.h“
void mexFunction(int nlhs mxArray *plhs[] /* Output variables */
int nrhs const mxArray *prhs[]) /* Input variables */
{
// check proper input and output
if(nrhs!=3)
mexErrMsgIdAndTxt( “MATLAB:cfarMEX:invalidNumInputs“
“Three inputs Required.“);
else if(nlhs > 1)
mexErrMsgIdAndTxt( “MATLAB:cfarMEX:maxlhs“
“Too many output arguments.“);
else if(!mxIsStruct(prhs[2]))
mexErrMsgIdAndTxt( “MATLAB:cfarMEX:inputNotStruct“
“Input must be a structure.“);
//Declarations
unsigned char *image;
unsigned char *mask;
double *outputImage;
unsigned char pixel;
int rows cols;
double sum = 0 avg = 0;
int backgroundSize = (int)(mxGetScalar(mxGetField(prhs[2] 0 “backgroundSize“)));
int guardSize = (int)(mxGetScalar(mxGetField(prhs[2] 0 “guardSize“)));
int padSize = (int)(mxGetScalar(mxGetField(prhs[2] 0 “padSize“)));
// Get image as unsigned uint8 pointer as well as dimensions
image = (unsigned char *)mxGetData(prhs[0]);
mask = (unsigned char *)mxGetData(prhs[1]);
// Get image/mask dimensions
rows = mxGetN(prhs[0]);
cols = mxGetM(prhs[0]);
// Create an output image array
plhs[0] = mxCreateNumericMatrix(cols rows mxDOUBLE_CLASS false);
outputImage = (double *) mxGetPr(plhs[0]);
// Run through image and process it
for (int i = 0 + padSize; i < rows - padSize; i++)
{
for (int j = 0 + padSize; j < cols - padSize; j++)
{
pixel = image[j + cols*i];
if(mask[j + cols*i] > 0)
{
for(int x = -floor(backgroundSize/2); x <= floor(backgroundSize/2); x++)
{
for(int y = -floor(backgroundSize/2); y <= floor(backgroundSize/2); y++)
{
sum += (int) image[(j+x) + cols*(i+y)];
}
}
for(int x = -floor(guardSize/2); x <= floor(guardSize/2); x++)
{
for(int y = -floor(guardSize/2); y <= floor(guardSize/2); y++)
{
sum -= (int) image[(j+x) + cols*(i+y)];
}
}
outputImage[j + cols*i] = sum/(backgroundSize*backgroundSize - guardSize*guardSize);
sum = 0;
}
else
outputImage[j + cols*i] = 0;
}
}
return;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-05-11 21:45 CFAR\
文件 1336 2014-06-28 13:52 CFAR\README
文件 0 2014-06-28 13:52 CFAR\SARBlockProcessor.m
文件 2650 2014-06-28 13:52 CFAR\avgRegionImage.cpp
文件 12774 2014-06-28 13:52 CFAR\avgRegionImage.mexa64
文件 20617 2006-04-12 17:00 CFAR\data1.jpg
文件 1957 2018-05-11 21:20 CFAR\runCFAR.m
文件 586 2014-06-28 13:52 CFAR\scaledata.m
文件 681663 2014-06-28 13:52 CFAR\vessels.png
- 上一篇:Qt 二维码打印
- 下一篇:基于干扰观测器的单机械臂滑模控制.rar
相关资源
- 编程实现二维DCT变换
- 图像二值化
- 用FFT对信号进行频谱分析
- Tone-Reservation
- QGA 量子遗传算法
- 差分形式的阻滞增长模型
- 遗传算法的M文件
- 简单二阶互联系统的非线性动力学分
- 手写数字识别-模板匹配法
- Stock_Watson_动态因子分析模型
- 果蝇优化算法优化支持向量回归程序
- 自己做的一个简单GUI扑克纸牌识别-
- multi output SVR
- AR过程的线性建模过程与各种功率谱估
- PCNN TOOLBOX
- plstoolbox.zip
- 中国国家基础地理信息系统GIS数据
- 粒子群微电网优化调度
- 矩阵分析-经典教材-中文版-Roger.A.Ho
- 压缩感知TwIST
- 基于最小错误率的贝叶斯手写数字分
- 最全系统辨识源代码,包括多种最小
- 导弹制导实验
- 画跟踪精确度图的程序.zip
- 重力场大地水准面及重力异常阶次误
- prtools5.2.3工具包
- 脉冲耦合神经网络工具箱PCNN-toolbox
- SVM算法-回归拟合程序.zip
- Kriging代理模型EGO算法.zip
- Matalb实现停车场完整系统
评论
共有 条评论