首页 > 其他分享 >ISP信号处理基本概念与操作

ISP信号处理基本概念与操作

时间:2022-12-26 19:32:37浏览次数:46  
标签:frame 信号处理 ISP imtool 亮度 直方图 image 图像 基本概念


目录

​​1、图像的数字化+数字信号处理(ISP)​​

​​2. 直方图(histogram)/积分直方图 (cumulative histogram) /图像的直方图均衡​​

​​3、查找表lookup table​​

​​4、Filter convolution:滤波 卷积​​


 

 

 

1、图像的数字化+数字信号处理(ISP)



    

ISP信号处理基本概念与操作_直方图


 


  • 在sensor上经过采样、量化、编码输出如下M行N列的图像,每一个位置就是一个像素,坐标表示为:P(i,j),只有一个强度值/亮度值表示:L
  • 由浮点数(0-1的小数)和  定点数(8、10、12bit)两种表达方式,浮点数计算量较大,一般都转换为定点数计算;
  • 图像的表示可以是简单的L表达,也可以进行多维的表达P(i,j)=F(L,D,T,C....),D是深度、T是时域、C是颜色;


ISP信号处理基本概念与操作_直方图_02


 


 


  • 数字图像处理的基本操作:图像读取


ISP信号处理基本概念与操作_直方图均衡_03


Matlab code:


filename = 'C:\raw_plain16_test.raw’;


f=fopen(filename);


frame = fread(f,[1920 1080],’uint16=>uint16’);


imtool(frame,[]);


 


读取结果:



ISP信号处理基本概念与操作_浮点数_04


 


 


 


2. 直方图(histogram)/积分直方图 (cumulative histogram) /图像的直方图均衡

  • 直方图:横轴代表亮度(lux),纵轴表示在每一个亮度上的像素数;
  • 积分直方图:表示把前面的直方图进行积分(后项等于前面所有项的和),当最后亮度上没有像素了,积分结果就没有变化了;


ISP信号处理基本概念与操作_直方图均衡_05


 


  • 如下可以通过直方图算出平均亮度(每个亮度上的像素数*该亮度,所有像素亮度再求和的结果/总像素数)
  • 通过直方图算出该图像的对比度(对应的最高亮度和最低亮度的比值);


ISP信号处理基本概念与操作_浮点数_06


 


  • 如下图前一幅直方图很窄对应的Contrast就很小,后一幅Contarast就很大;

  

ISP信号处理基本概念与操作_直方图_07


 


  • 数字图像处理的基本操作:直方图

    

ISP信号处理基本概念与操作_直方图均衡_08


 


Matlab code


显示直方图:


filename = 'C:\raw_plain16_test.raw’;


f=fopen(filename);


frame = fread(f,[1920 1080],'ubit16=>uint16’);


imtool(frame’,[]);


figure(11),histogram(frame);


 


显示积分直方图:


image = double(image);


image = image./4096;


h = histogram(frame);


cum = cumsum(h.Values);


figure(22),plot(cum);


 


直方图均衡(将图像的动态范围加大,使亮暗分明)


jj = histeq(image);


imtool(jj’,[]);


 


 


3、查找表lookup table

  • 应用1:thresholding

如下图,通过lookup table可以设置输出的像素阈值,实现把threshold以下的值都变成0的过程;



ISP信号处理基本概念与操作_直方图均衡_09


 


  • 查找表:取反

通过取反可以得到如下负片的效果:



ISP信号处理基本概念与操作_浮点数_10


 


Matlab code


clear all


clc


I=rgb2gray(imread(‘sample.jpg'));    //将读入rgb图生成灰度图


I=imresize(I,0.1);   //将图像size缩小


 


i=255:-1:0;    //产生255-0的查找表


lut=i;


 


out=zeros(size( I));


 


for i=1:size(I,1)


    for j=1:size(I,2)


 


        out(i,j)=lut(I(i,j)+1);


    end


end


 


imtool(uint8(I));


imtool(uint8(out));


 


 


4、Filter convolution:滤波 卷积



ISP信号处理基本概念与操作_直方图均衡_11


 



ISP信号处理基本概念与操作_直方图_12


 


 



ISP信号处理基本概念与操作_浮点数_13


 


Matlab code:


h = ones(3,3)./9;    //产生一个3*3的矩阵,做图像去噪模糊的过程,低通滤波的过程


%h=[-1 -1 -1;-1 9 -1;-1 -1 -1];     //高通滤波的过程


ff = imfilter(image,h);


imtool(ff);


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 

标签:frame,信号处理,ISP,imtool,亮度,直方图,image,图像,基本概念
From: https://blog.51cto.com/u_15699736/5970565

相关文章

  • TiSpark 原理之下推丨TiDB 工具分享
    TiSpark是PingCAP为解决用户复杂OLAP需求而推出的产品。它通过Spark提供的拓展机制与内置的TiKVClientJava,在Spark之上直连TiKV进行读写,具有事务性读取、事务......
  • TiSpark 如何扩展 Spark
    作者:BillmaySparkAPISpark主要提供以下四种拓展方式API局限版本CustomizedfunctionorRDD无法支持SparkSQL任意DataSourceAPIAPI变动会比较频繁BeforeSpark2.......
  • Java开发学习(四十七)----MyBatisPlus删除语句之多记录操作
    1、多记录操作先来看下问题:之前添加了很多商品到购物车,过了几天发现这些东西又不想要了,该怎么办呢?很简单删除掉,但是一个个删除的话还是比较慢和费事的,所以一般会给用......
  • javaweb基本概念
        web应用程序编写完毕后,若要提供给外界访问:需要一个服务器统一管理。       ......
  • 【框架】MybatisPlus
    开篇MyBatiesPlus(简称MP)是基于MyBatis框架基础上开发的增强工具,旨在简化开发,、提高效率。开发方式基于MyBatis使用MyBatisPlus基于Spring整合MyBatisPlus基于S......
  • MybatisPlus 中文入库变成问号
    环境依赖pom <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.1</version> </dependency......
  • 全志A133 Android10 Display框架实践
    一、Sunxi平台图形开发术语全志A133采用的DISP2的框架,即DE2.0版本。对应kernel的配置:CONFIG_DISP2_SUNXI=y   1、硬件术语1)layer:一个图层处理单元,可以处理一张......
  • mybatisplus总结
    在学完了spring之后又去看了mybatisplus因为在学spring的过程中他有一部分讲解了一部分的springboot 然后也就尝试使用了 但是他一开始是用的mybatis进行数据库的操作......
  • JavaSE-day04-基本概念-数据类型&标识符&键盘录入
    Java基本概念本章包含数据类型,标识符以及键盘录入!数据类型数据类型的分类1.基本数据类型Java中基本数据类型分为4类8种。1.整数:byte,short,int,long细节:整数的......
  • 【转】问题:Linux 信号处理,当连续给一个进程同时发送多个信号时,部分信号丢失而未得到处
    转:https://blog.csdn.net/SLN2432713617/article/details/89138731解释信号丢失问题:阻塞,sigaction函数有阻塞的功能,比如SIGINT信号来了,进入信号处理函数,默认情况下,在信......