ISP PIPLINE (八) RGB2YUV
what is the YUV?
暗电流来源1、YUV 是一种基本色彩空间, 人眼对亮度改变的敏感性远比对色彩变化大很多。亮度分量Y 要比色度分量U、V 重要得多。 所以, 可以适当地抛弃部分U、V分量, 达到压缩数据的目的。 YCbCr 是YUV 经过缩放和偏移的改动版,Y 表示亮度,Cr、Cb 表示色彩的色差, 分别是红色和蓝色的分量。
why does transform RGB 2 YUV?
将RGB 转换为 YUV444, 在YUV 色彩空间上进行彩色噪声去除、 边缘增强等。
how to transform RGB 2 YUV?

附一段简单代码:
#include <fstream>
#include <sstream>
#include <iostream>
#include <opencv2/imgproc.hpp>
#include <opencv2/highgui.hpp>
#include <vector>
#include <ctime>
#pragma warning( disable : 4244 )
using namespace std;
using namespace cv;
#define WIDTH 4000
#define HEIGHT 3000
int main(int argc, char** argv)
{
Mat imgMat = imread("111111.bmp");
if (imgMat.empty())
return -1;
int cols = imgMat.cols;
int rows = imgMat.rows;
clock_t startTime, endTime;
startTime = clock();
for (int i = 0; i < rows; i++)
{
uchar* data = imgMat.ptr<uchar>(i);
for (int j = 0; j < cols; j++)
{
data[3*j+2] = data[3*j] * 0.5 + data[3*j+1] * 0.4178 + data[3*j+2] * 0.0813;
data[3*j+1] = data[3 * j] * 0.1678 + data[3*j+1] * 0.33113 + data[3*j+2] * 0.5;
data[3*j+0] = data[3 * j] * 0.299 + data[3*j+1] * 0.587 + data[3*j+2] * 0.114;
}
}
endTime = clock();
cout << "consume time = " << double(endTime - startTime) << endl;
resize(imgMat, imgMat, Size(200,200));
imshow("44", imgMat);
waitKey(0);
}
ISP PIPLINE (八) RGB2YUV的更多相关文章
- ISP PIPLINE (十四) AE(自动曝光)
自动曝光可以可以通过调节 模拟增益,数字增益,曝光时间,光圈大小来调剂曝光. 曝光在ISP PIPLINE的位置. (先介绍一个额外的知识点: ) gamma compression(也就是de-ga ...
- ISP PIPLINE (六) 3A 综述
前言: 上一篇文章: ISP PIPLINE (五) Denoise 下一篇文章: (1)3A定义包括什么 Iris:自动光圈,根据环境自动调节光圈. 既然讲到光圈,就先看一下光圈是什么,以及它如何影 ...
- ISP PIPLINE(零) 知识综述预热
本文为camera isp pipline概述 ISP,即image signal processing.为图像成型做的处理工作.适应不同光学环境下图像的还原. pipline流程如下: 光通过LEN ...
- ISP PIPLINE (七) gamma
what is the gamma? CCD.CMOS成像方式是通过像点中的"硅"感受光线的强弱而获得画面.而硅感光是物理成像,它真实地反应光线强度的变化,来多少就输出多少,因此它 ...
- ISP PIPLINE (一) BLC 以及 线性化
what is the BlackLevel? 暗电流来源1.raw8为例,单个pixel的有效值是0~255,但是实际AD芯片的精度可能无法将电压值很小的一部分转换出来,芯片厂会刻意添加一个固定的偏 ...
- ISP PIPLINE (十五) AF
主流的AF: CDAF, PDAF, laser assist AF(这个只是辅助,在微距或者拍摄纹理不明显的场景下好用). AF的大致原理就是检测图像锐度或者等价于锐度的参数,推动马达实现合焦或者对 ...
- ISP PIPLINE (九_2) Denoise 之 time domain denoise
时域噪声是空域噪声在时间上波动的一种描述. 1.多帧平均去噪法 1.1 理论: 1.2 帧数增加,噪声减小: 1.3 IIR滤波器的效果 2.1中的两种方法在拍摄视频的时候,如果有运动物体,则会出现拖 ...
- ISP PIPLINE (九_1) Denoise 之 space domain denoise
1.空间域噪声类型 1.gauss+possion 2.椒盐噪声(dpc处理已经处理了) 去除空域噪声有哪些方法? 空域噪声一般的思想是对某pixel邻域的pixels进行加权平均. 比如 1.高斯降 ...
- ISP PIPLINE (十三) CSM/CSC(color space matrix/convert)
1.RGB为何要转换为YCbCr,历史遗留问题! 一般一个技术如果为了保证原有的设备可以继续使用,就需要兼容以前的技术.黑白电视到彩色电视的进化就是转换为YCbCr的原因,同时YCbCr比RGB传输占 ...
随机推荐
- Linux常用硬盘分区工具简介
1.fdisk 查看当前硬盘分区: [root@yqtrack-zabbix /]# fdisk -l 2.cfdisk 查看当前硬盘分区: 3.sfdisk 查看当前分区: 4.parted 查看当 ...
- kafka partition(分区)与 group
kafka partition(分区)与 group 一. 1.原理图 2.原理描述 一个topic 可以配置几个partition,produce发送的消息分发到不同的partition中,co ...
- Vue, React, AngularJS, Angular2 我们对流行JavaScript框架们的选择
转自<奇舞周刊>,好文章mark一下 分割线 一个有趣的事实是:IBM发表的2017年最值得学习的编程语言名单中,JavaScript榜上有名.这位IT巨头指出,JS在网站中惊人地达到94 ...
- Mac版 IntelliJ Idea使用系列(一)
当连续import同一个包的多个类时,Idea会自动改成import xxx.*; 办法:修改Names count to use static import with '*'
- 网页三剑客之CSS
1.CSS概述 CSS中文简称层叠样式表(英文全称:Cascading Style Sheets),用来控制页面的表现,即使页面更好看的语言. 2.CSS基本语法和页面引用 2.1 css的定义方法 ...
- mycat 使用
介绍 支持SQL92标准 支持MySQL.Oracle.DB2.SQL Server.PostgreSQL等DB的常见SQL语法 遵守Mysql原生协议,跨语言,跨平台,跨数据库的通用中间件代理. 基 ...
- C++回顾day03---<多态>
一:错误理解下的多态 #include <iostream> using namespace std; class Parent { public: Parent() { cout < ...
- java 使用for循环打印杨辉三角形
首先需要说明的问题: 什么是杨辉三角形? 如图所示:杨辉三角形由数字排列,基本的特点是两侧的数值均为1,其它位置的数值是基正上方的数值与其左上方的数值之和. 代码实现: package test; i ...
- oh-my-zsh安装和简单定制
我使用的是deepin系统,deepin的终端做的已经很好了,最近想换一个新的命令的提示符风格.据说oh-my-zsh很好用,花一点时间安装,记录这个过程. oh-my-zsh的安装是非常方便的,安装 ...
- Centos7下安装Docker
1.首先卸载旧版: yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ ...