莫度编程网

技术文章干货、编程学习教程与开发工具分享

什么是OpenCV?有哪些基础图像处理操作?

一、OpenCV简介

OpenCV是一款由Intel公司俄罗斯团队发起并参与和维护的一个计算机视觉处理开源软件库,支持与计算机视觉和机器学习相关的众多算法,并且正在日益扩展。

傅里叶级数物理意义的直观理解:利用傅里叶级数逼近方波信号

上篇文章将向大家介绍频谱的概念,对傅里叶级数、傅里叶积分、傅里叶变换进行了数学的推导,并解释了它们各自的物理意义。推导过程见我的上一篇文章:

MATLAB 绘制双y轴的柱状图实例加程序

前面介绍过MATLAB如何绘制双y轴图形,为了节省论文里面的图形的数量,可以将类型相同的图绘制在一起,或者将要进行比较的结果数据进行处理。但是对于柱形图而言,当绘制图像的数据差距过大,数据小的图形的图像很短。今天主要介绍MATLAB 绘制双y轴的柱状图实例加程序。


例如要处理如下的数据,绘制柱形图进行对比分析。

MATLIB中使用PCA(matlab做pca分析)

主成分分析PCA(
PrincipalComponentsAnalysis),奇异值分解SVD(Singular value decomposition)是两种常用的降维方法

降维致力于解决三类问题:

降维可以缓解维度灾难问题;

降维可以在压缩数据的同时让信息损失最小化;

基于优化变分模态分解的一维时间序列信号降噪(MATLAB 2018)

关于变分模态分解:

仿生智能算法系列之八---差分进化算法

差分进化算法(Differential Evolution 简称DE)是Rainer Storn 和Kenneth Price在1996 年提出,最初试图使用向量差进行向量种群的混洗,以此来解决切比雪夫多项式适应性问题。DE 通过种群内个体间的合作与竞争来实现对优化问题的求解,其本质上是一种基于实数编码的具有保优思想的进化算法。该算法实现技术简单,在对各种测试问题的实验中表现优异,已经成为近年来进化算法研究中的热点之一。

和其它演化算法一样,DE是一种模拟生物进化的随机模型,通过反复迭代,使得那些适应环境的个体被保存了下来。但相比于进化算法,DE保留了基于种群的全局搜索策略,采用实数编码、基于差分的简单变异操作和一对一的竞争生存策略,降低了遗传操作的复杂性。同时,DE特有的记忆能力使其可以动态跟踪当前的搜索情况,以调整其搜索策略,具有较强的全局收敛能力和鲁棒性,且不需要借助问题的特征信息,适于求解一些利用常规的数学规划方法所无法求解的复杂环境中的优化问题。目前,DE已经在在约束优化计算、聚类优化计算、非线性优化控制、神经网络优化、滤波器设计、阵列天线方向图综合及其它方面得到广泛应用。

NBIOT NSSS 辅同步信号检测,MATLAB实现

朋友们,这是NBIOT小区搜索最后一期了,从下期开始开始讲LTE同步信号生成,小区搜索,LTE小区搜索讲完开始讲5G NR同步信号生成小区搜索


在蜂窝无线通信中,辅同步信号的检测一般都采用最大似然法检测,利用本地生成的NSSS信号跟收到空口信号做相关,遍历所有的小区ID和80ms帧定时就是一种最大似然检测方法,在协议3GPP 36.211中可知NSSS帧的映射只在偶数帧的子帧9,所以80ms帧定时实际只需要遍历0,1,2,3,然后乘以2就可以确定80ms帧定时中的哪一帧。

基于经验模态分解和去趋势波动分析的一维信号降噪方法(MATLAB)

说点其他的吧,简单回答一个知乎上的问题:

计算XYZ三刺激值的MATLAB程序(三刺激值函数)

有人向我要由光谱数据计算XYZ三刺激值的MATLAB的程序,很多年前写的了,也多年不用MATLAB了,程序还在,应该不会错。

function XYZ=XYZ_fromSR(SR,S,deg)
% 由光谱反射率计算颜色的三刺激值
% 输入参数:
%     SR--光谱反射率,n×2的矩阵,第一列是波长,第2~m列是光谱反射率数据
%     S-光源,'A'表示A光源,'C'表示C光源,'D50','D55','D65','D75',默认D65
%     deg--视场,2表示2°视场,10表示10°视场,默认2°视场
% 输出参数:
%     XYZ-颜色的三刺激值
%
% 编写: 
% 2007-8-28
% 

if nargin==0     % 如果没有参数
   dis('请输入光谱反射率数据,注意是n×2的矩阵,第一列是波长,第2列是光谱反射率数据');
   return;
else if nargin ==1   % 如果 是一个参数
        Illcode = 'D65' ; % 光源默认为D65
        degcode = 2;   % 默认2°视场
    else if nargin ==2   % 如果 是二个参数  视场默认2° 
            Illcode = S;   % 光源 
            degcode = 2;   % 默认2°视场
        else if nargin ==3       % 如果 是3个参数  
            Illcode = S;   % 光源 
            degcode = deg;   % 2°视场 
            else  
                Illcode = 'D65' ; % 光源默认为D65
                degcode = 2;   % 默认2°视场
            end
        end
    end
end  

% 获得光源的相对光谱功率分布 
RSPD=getRSPD(Illcode);

% 获得CIE标准观察者的数据

if degcode== 10
    CIE_Std = CIE1964Std_XYZ;  
else
    CIE_Std = CIE1931Std_XYZ;  
end  



% SR和RSPD波长的范围和间隔可能不一样,下面找出两者共有的波长
[comn,iColorS,iIll] = intersect(SR(:,1),RSPD(:,1));

% SR和RSPD以及CIE_Std波长的范围和间隔可能不一样,下面找出3者共有的波长
[comn,iCIE_Std,ic] = intersect(CIE_Std(:,1),comn);
[c,iSR,ic] = intersect(SR(:,1),comn);
[c,iRSPD,ic] = intersect(RSPD(:,1),comn);

if RSPD(iRSPD,2)==0
    XYZ= [0 0 0];
    return
end
    
K=100/sum(RSPD(iRSPD,2).*CIE_Std(iCIE_Std,3));  % 计算K值

 
[a,sample_num]=size(SR);
XYZ=zeros(sample_num-1,3);
for ii=2:sample_num
    Xt=K*sum(RSPD(iRSPD,2).*CIE_Std(iCIE_Std,2).*SR(iSR,ii)); % 计算X刺激值
    Yt=K*sum(RSPD(iRSPD,2).*CIE_Std(iCIE_Std,3).*SR(iSR,ii)); % 计算Y刺激值 
    Zt=K*sum(RSPD(iRSPD,2).*CIE_Std(iCIE_Std,4).*SR(iSR,ii)); % 计算Z刺激值 
    XYZ(ii-1,:)=[Xt,Yt,Zt];
end
   

精品博文建立灰度直方图(灰度直方图程序)

(1)基本概念

如果将图像中像素的灰度级别看作是一个随记变量(概率论中学到的随记变量,对后续直方图均匀化的推到至关重要),则其分布的情况就可以用概率密度函数(PDF)来刻画和描述,即表现为灰度直方图(histogram),它表示图像中具有某种灰度级像素的个数,反映了每种灰度出现的频率。灰度直方图的横坐标是灰度级,纵坐标是该灰度级像素的个数(出现的频度),是图像基本的统计特性。

从基本概念中可知,直方图是一幅图像中各像素灰度值出现次数的统计结果,它只反映该图像中不同灰度值出现的次数(或频数),而未反映这一灰度值像素所在的位置,也就是说,直方图只包含了该图像中某一灰度值像素出现的概率,而丢失了其所在的位置信息。

<< 1 2 3 > >>
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言

    Powered By Z-BlogPHP 1.7.4

    蜀ICP备2024111239号-43