matlab 偏振图像处理_用偏振图像matlab - CSDN
  • MATLAB:绘制三维偏振光动画

    千次阅读 2020-01-24 15:28:09
    MATLAB:绘制三维偏振光动画基础代码功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants...

    MATLAB:绘制三维偏振光动画

    基础

    偏振光波包括线偏振、圆偏振、椭圆偏振几个方向,其中线偏振的电场公式为:
    E1=e1E1ei(krwt)\vec E_1=\vec e_1E_1e^{i(\vec k\cdot \vec r-wt)}

    两个线偏振可以合成圆偏振和椭圆偏振,其区别在于相位和幅度。
    将公式做变形处理,取实部:
    E1=e1E10cos(krwt+φ1)\vec E_1=\vec e_1E_{10}cos(\vec k\cdot \vec r-wt+\varphi_1)
    E2=e2E20cos(krwt+φ2)\vec E_2=\vec e_2E_{20}cos(\vec k\cdot \vec r-wt+\varphi_2)

    代码

    
    u0 = 4*pi*1e-7;            %自由空间中的磁导率
    e0 = 1e-9/(36*pi);         %自由空间中的电介质常数
    f = 3*1e8;                 %电磁波的频率,单位Hz
    w = 2*pi*f;
    k = w*(u0*e0)^0.5;         %计算波数
    pha=pi/2;                  %相位差
    z=0:0.01:5;                %假设传播方向沿+z正方向
    i=1;
    fmat=moviein(10000);       %建立一个10000帧的动画
    
    for t=0:0.05:2
    Ex=cos(2*pi*t-k*z);        %计算x方向上t时刻,z平面的电场振幅
    Ey=cos(2*pi*t-k*z+pha);    %计算y方向上t时刻,z平面的电场振幅,
    
    h=figure;set(h,'Visible','off');%设置不弹窗,避免和movie重复了
    
    plot3(Ex,Ey,z);            %3维图
    xlabel('Ex')               %x,y,z坐标名
    ylabel('Ey')          
            zlabel('Z')            
            title('圆极化波传播','fontsize',14)   
    %图像命名
    
    hold on 
    grid on                   %格点
    hold on
    quiver3(0,0,0,Ex(1),Ey(1),z(1));   %矢量箭头
    hold off
    fmat(:,i)=getframe;      %抓取图像放入fmat
    i=i+1;     
    end
    
    h=figure(1);
    set(h,'Visible','on');
    movie(fmat,1,7);         %将fmat以每秒7帧的速度播放一遍
    

    此处建立的是动画,有许多不足的地方,例如:

    fmat=moviein(10000);       %建立一个10000帧的动画

    提前开辟一个足够大的空间不如一边生成图片一边开辟

    所以稍加改动重新设计了一个生成gif的程序

    u0 = 4*pi*1e-7;            %自由空间中的磁导率
    e0 = 1e-9/(36*pi);         %自由空间中的电介质常数
    f = 3*1e8;                 %电磁波的频率,单位Hz
    w = 2*pi*f;
    k = w*(u0*e0)^0.5;         %计算波数
    pha=1.2;                  %相位差
    
    z=0:0.01:5;                %假设传播方向沿+z正方向
    %i=1;
    pic_num=1;                 %帧数
    for t=0:0.05:5
        Ex=cos(2*pi*t-k*z);     %计算x方向上t时刻,z平面的电场振幅
        Ey=2*cos(2*pi*t-k*z+pha); %计算y方向上t时刻,z平面的电场振幅,
      
        plot3(Ex,Ey,z);         %3维图
        xlabel('Ex')            %x,y,z坐标名
        ylabel('Ey')          
        zlabel('Z')            
        title('圆极化波传播','fontsize',14)    %图像命名
        hold on 
        grid on                %格点
        hold on
        quiver3(0,0,0,Ex(1),Ey(1),z(1));    %矢量箭头
        hold off
        F=getframe;            %抓取当前图像
        I=frame2im(F); 
        [I,map]=rgb2ind(I,256);%因gif不支持三维数据,所以应调用 rgb2ind,将rgb图像转为关联256种色彩的索引图像
        if t==0
            imwrite(I,map,'test.gif','gif'); %创建一个.gif文件,将索引图像数组和其关联的颜色图写入
        else     
            imwrite(I,map,'test.gif','gif','WriteMode','append','DelayTime',0.01);%将多个图像并入第一个,帧间加入0.01s的延时
        end
        pic_num=pic_num+1;
    end

    pic_num是gif的帧数,每保存一次图片pic_num+1

    展开全文
  • 根据CCD相机采集到的旋光楔形图像,标定当前基于旋光可视检测的液体浓度光电检测系统实验系统参数; 然后由测得的比旋光度测定未知浓度葡萄糖溶液的浓度。

    目的

    根据CCD相机采集到的旋光楔形图像,标定当前基于旋光可视检测的液体浓度光电检测系统实验系统参数;
    然后由测得的比旋光度测定未知浓度葡萄糖溶液的浓度。

    原理

    一、旋光效应
    当一束单一的平面偏振光通过某些晶体或物质的溶液时,其振动方向发生改变,此时光的振动面将以光的传播方向为轴线会旋转一定的角度,这种现象称为旋光现象,旋转的角度称为旋光度。物质的这种使偏振光的振动面旋转的性质叫做旋光性,具有旋光性的物质叫做旋光性物质或旋光物质。

    二、角向偏振片显示原理
    角向偏振显示器又称角向偏振片,其截面图如图1(a)所示。角向偏振片可以看作是一个线栅偏振,即由多个线型偏振器件构成的具有圆形同心传播轴的偏振器件。角向偏振片的每一个小区域都是一个线型偏振器,其传输轴的方向垂直于径向。当线偏振光通过角向偏振显示器之后,观察成像结果发现,在线偏振光的偏振方向上会出现两个相对的楔形暗区如图1(b),对该图像进行处理,可以获得线偏振光的振动方向。

    (a)
    (b)
    图1 (a)角向偏振显示器截面; (b)线偏振光经过角片器成像仿真图
     

    三、系统原理
    物质的旋光度实验光路如图4.2所示,由单色光源(钠光灯或激光器)发出的光,通过起偏镜(尼可尔棱镜)后,转变为平面偏振光(简称偏振光)。当偏振光通过样品管中的旋光物质时,由于旋光性,其振动平面会旋转一定角度,此时的偏振光在入射到角向偏振片后,成像到CCD相机上。拍摄到的图像的楔形暗区方向即为经过旋光物质作用后光束的偏振方向,与未经过旋光物质作用的光束的偏振方向的夹角即为样品的实测旋光度θ\theta
    在这里插入图片描述

    图2 实验光路

    旋光度的大小除了取决于被测分子的立体结构外,还受到待测溶液的浓度、偏振光通过溶液的厚度(即样品管的长度)以及温度、所用光源的波长、所用溶剂等因素的影响,这些因素在测定结果中都要表示出来。常用比旋光度来表示物质的旋光性,比旋光度和旋光度的关系如下:
    θ=αcL\theta=\alpha\cdot c \cdot L

    上式中,θ\theta为所测得的旋光度;c为液层厚度为L (cm)的液体的浓度(g/ml);α\alpha为旋光物质的比旋光度,即单位浓度和单位长度下的旋光度,是旋光性物质的物理常数。通过测定旋光度,可以鉴定物质的纯度、测定溶液的浓度、密度和鉴别光学异构体。
    实验系统中,在确定容器和旋光物质的情况下, α\alpha与L 均为常数,上式可写为:
    θ=Kc\theta=K\cdot c
    其中K是当前实验系统待标定参数。

    MATLAB处理程序

    算法流程图如下:
    在这里插入图片描述
    在这里插入图片描述

    未处理旋光图像

    在这里插入图片描述

    二值化图像
     

    程序输出角度为3.0248°,根据公式θ=K⋅c及标定得到的K值计算得未知溶液浓度:
    在这里插入图片描述

    close all;
    clear all;
    [filename1, pathname1] = uigetfile({'*.tif';'*.jpg'; '*.bmp'});
    if filename1==0, return, end 
    oldpath=cd;  
    cd(pathname1);
    [filename2, pathname2] = uigetfile({'*.tif';'*.jpg'; '*.bmp'});
    cd(oldpath);
    if filename2==0, return, end 
    FILENAME1 = [pathname1 filename1];
    FILENAME2 = [pathname2 filename2];
    SorImg1=imread(FILENAME1);
    SorImg2=imread(FILENAME2);
    subplot(1,2,1),imshow(SorImg1);
    subplot(1,2,2),imshow(SorImg2);
    threshold1=0.35;
    threshold2=0.35 ;
    figure(1);   %楔形暗区图像
    subplot(1,2,1),[Orientation1,Centroid1]=RotAngFun(SorImg1,filename1,threshold1,threshold2);
    subplot(1,2,2),[Orientation2,Centroid2]=RotAngFun(SorImg2,filename2,threshold1,threshold2);
    Delta=Orientation1-Orientation2;  %单位是度
    display(['the angle is ' num2str(Delta)]);
    figure(2);  %外接椭圆长轴与x轴
    subplot(1,2,1),hold on,PlotFun(Orientation1,Centroid1,size(SorImg1));
    subplot(1,2,2),hold on,PlotFun(Orientation2,Centroid2,size(SorImg2));
    
    
    function [Orientation,Centroid]=RotAngFun(SorImg,filename,threshold1,threshold2)
    flag=strfind(filename,'-');
    % GrayImg=rgb2gray(SorImg);
    GrayImg = SorImg;
    if(isempty(flag))
        BwImg=im2bw(GrayImg,threshold1);
    else
        BwImg=im2bw(GrayImg,threshold2);
    end
    BwImg=bwareaopen(BwImg,1000);
    BwImg=~bwareaopen(~BwImg,1000);
    se=strel('disk',5);
    BwImg=imopen(BwImg,se);
    BwImg=imfill(BwImg,'holes');
    imshow(BwImg);
    S=regionprops(BwImg,'Orientation','Centroid');
    Orientation=S.Orientation;
    Centroid=S.Centroid;
    end
    
    function  PlotFun(Orientation,Centroid,ImgSize)
    k=tan(deg2rad(Orientation));
    b=-Centroid(2)-k*Centroid(1);
    x=1:ImgSize(2);
    y=k*x+b;
    plot(x,-y,'r');hold on;
    y1=Centroid(2)*ones(1,ImgSize(2));
    plot(x,y1,'b');
    title(num2str(Orientation));
    end
    
    展开全文
  • 本人目前在做图像亚像素级配准算法研究,因自己课题图像不存在标准图像,试验算法时需要对一些标准图像进行水平、垂直方向的偏移,用了一些工具发现都只能实现整像素级偏移,而我要把图片偏移量精确到亚像素级别,...
  • 偏振去雾成像原理简介

    千次阅读 2017-12-05 11:37:55
    1、图像处理去雾技术,主要对传统光学成像设备所采集到的图像进行增强或复原操作,从而实现提高图像质量的效果 2、光学系统改进技术,通过对光学成像系统的改造和成像算法的优化,减小散射介质对成像质量的影响
     目前,国内外对于透过随机散射介质实现成像的研究与探索,目前主流技术主要分为两大类:
    1、图像处理去雾技术,主要对传统光学成像设备所采集到的图像进行增强或复原操作,从而实现提高图像质量的效果

    2、光学系统改进技术,通过对光学成像系统的改造和成像算法的优化,减小散射介质对成像质量的影响

    通常描述光的偏振信息时,采用斯托克斯参量(S0,S1,S2,S3),S0表示光的总强度;S1 表示 0º与90º线偏振光分量之差;S2 表示 45º与 135º线偏振光分量之差;S3表示右旋与左旋圆偏振光分量之差。

    由于在自然界大气背景及目标物对太阳光反射的偏振效应中,圆偏振分量极少,因此通常假定S3=0。

    雾霾气象条件下,到达探测器的光强主要包括两部分:

    1、场景目标的反射光,也称直接透射光,包含了场景目标的强度信息
    2、由雾霾颗粒散射导致的杂散光,也称大气光是雾霾环境中光学成像的主要干扰因素

    到达探测器的总光强是直接透射光强和大气光强的非相干叠加,表示为:
                                                 I=L*t+A∞(1-t)
    其中 t=exp(-β*z) 表示透过率,β为衰减系数,z为距离
    达到探测器的大气光强表示为:A=A∞(1-t)
    上述式子变形后可以得到目标反射光强的表达式:L=(I-A)/(1-A/A∞)
    利用光学设备对同一场景采集偏振方向为0°、45°、90°、135°的4幅图像,分别记作I(0)、I(45)、I(90)和I(135),计算得到斯托尅矢量:S0,S1,S2,进而计算得出个像素点的偏振度及偏振角

    选择出现概率最大的偏振角值作为大气光偏振角,从满足大气光偏振角的像素中计算偏振度,选取最大值为大气光偏振度。


    结合式子L=(I-A)/(1-A/A∞),进而得到得到目标反射光强,实现去雾操作。





    展开全文
  • 针对该特性,提出一种红外偏振图像的目标检测方法:首先使用 Mean-Shift 算法对红外图像和偏振度图像进行聚类处理;然后利用 DS 证据理论将聚类后的红外图像 和偏振度图像中的物体信息充分结合,以区分目标与背景,...
  • 可见光下拍摄偏振角度为0度 60度 120度图像,经斯托克斯处理
  • 光的偏振

    千次阅读 2018-11-28 14:50:25
        线偏振光:光矢量只在某一固定方向振动时,这种光线称为线偏振光.     部分偏振光:某一方向的光振动比与之相互垂直方向的光振动占优势的光称为部分偏振光.     偏振化方向:允许光振动通过的方向...

    一、基本概念和物理量
        线偏振光:光矢量只在某一固定方向振动时,这种光线称为线偏振光.
        部分偏振光:某一方向的光振动比与之相互垂直方向的光振动占优势的光称为部分偏振光.
        偏振化方向:允许光振动通过的方向称为偏振片的偏振化方向.
        光是横波:光的偏振是横波特有的现象.
    二、基本规律和公式
        马吕斯定律
        当光强为 I0I_0 的偏振光入射至偏振片时,通过偏振片后的偏振光光强 III=I0cos2αI=I_0cos^2\alpha式中 α\alpha 为入射偏振光和出射偏振光偏振化方向之间的夹角.
        布鲁斯特定律
    tanbi=n2n1tanb_i=\frac{n_2}{n_1}

    展开全文
  • 包含实现经典去雾算法MATLAB文件,运行quwu.m文件可达到较好的图像去雾效果,并在资源中附相应实验图像
  • Polarization-based vision through haze Yoav Y.Schechner,Srinivasa G.Narasimhan,and Shree K.Nayar Columbia University 1,介绍 ...这个方法可以通过旋转偏振片到不同的角度或者两张偏振图像来...
  • 光的偏振(Polarization of light)

    千次阅读 2009-01-06 18:41:00
    自然光的定义: 普通光源中,单个原子发出的光波列是偏振的,大量原子独立发出的光波列的振动方向毫无规则,并且随时间迅速变化,这种光叫自然光,又称“天然光”。自然光中,光振动沿光传播方向对称分布,不直接...
  • **最近做了一份计算机视觉及图像处理领域的知名期刊统计。 国内外计算机视觉及图像处理领域知名期刊** 国内五种知名期刊近十年收录情况 计算机学报近十年有关计算机视觉及图像处理的文章 序号 篇名 1 深度...
  • 机器视觉与图像处理研究必备

    千次阅读 2020-06-01 19:49:20
    机器视觉和图像处理的研究工作,做到以下两点非常重要: 1、把握国际最前沿的内容 2、所做的工作具备很高的实用性 上述两点的解决方法分别为:找到这个方向公认成就最高的几个超级专家;找到实际应用的项目,边做...
  • 线性CCD图像处理与二值化

    千次阅读 多人点赞 2017-07-11 15:09:21
    Freescale实纪——线性CCD图像处理与二值化 分类:Freescale  (1841) (0)  上一篇博文我简单论述了Freescale光电组传感器——线性CCD的曝光与采集,那在对赛道的路面信息处理中,大多有两种...
  • 图像处理方向常用网站

    千次阅读 2016-06-17 13:37:43
    图像处理方向常用网站 做机器视觉和图像处理方面的研究工作,最重要的两个问题:其一是要把握住国际上最前沿的内容;其二是所作工作要具备很高的实用背景。解决第一个问题的办法就是找出这个方向公认最高...
  • 以iPhone背壳为例,进行瑕疵检测传统算法方向的选择瑕疵检测关注的两个问题瑕疵的标注瑕疵的量化历程1.图像去噪->...最近做图像处理与识别相关的事情,先从OpenCV/Matlab入手,看传统算法在瑕疵检测方向
  • 作机器视觉和图像处理方面的研究工作,最重要的两个问题:其一是要把握住国际上最前沿的内容;其二是所作工作要具备很高的实用背景。解决第一个问题的办法就是找出这个方向公认最高成就的几个超级专家(看看他们都在...
  • 简要说明: 推荐学习暗原色去雾的原理两篇: 第一篇为pdf格式 900k可以下载: ...id=2170 第二篇为: ...本文代码参考上面两篇文章,码出来的。效果不错。 figure, f=imread("小树林.png"); %f=imresiz
  • ** 矩阵分解Matlab编程实践背景...可通过水平线偏振光H、垂直线偏振光V,45°线偏振光P,右旋圆偏振光R入射,并分别探测水平线偏振光H、垂直线偏振光V,45°线偏振光P,右旋圆偏振光R出射情况下的能量值,即16种偏...
  • 图像处理的常用方法

    千次阅读 2015-09-24 13:36:09
    from:... 盲源分离: 自然梯度法 ...自然梯度法主要是用接收信号的概率密度求梯度,最后为了鲁棒性,使用黎曼空间的表示。...用g(y)表示接受信号的概率密度函数。...这个方法我想和SVD分解
  • Freescale实纪——线性CCD图像处理与二值化

    千次阅读 多人点赞 2014-08-04 16:35:47
    上一篇博文我简单论述了Freescale光电组传感器——线性CCD的曝光与采集,那在对赛道的路面信息处理中,大多有两种算法:凹槽法,可详见上海交大的技术报告与论文;更常见且本人采取的做法是软件二值化。  大家知道...
1 2 3 4 5 ... 9
收藏数 171
精华内容 68
关键字:

matlab 偏振图像处理