CN101742285B - 视频编码系统和方法以及调节编码位宽的控制方法和装置 - Google Patents

视频编码系统和方法以及调节编码位宽的控制方法和装置 Download PDF

Info

Publication number
CN101742285B
CN101742285B CN 200810225748 CN200810225748A CN101742285B CN 101742285 B CN101742285 B CN 101742285B CN 200810225748 CN200810225748 CN 200810225748 CN 200810225748 A CN200810225748 A CN 200810225748A CN 101742285 B CN101742285 B CN 101742285B
Authority
CN
China
Prior art keywords
brightness value
lower limit
upper limit
bit wide
dynamic range
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN 200810225748
Other languages
English (en)
Other versions
CN101742285A (zh
Inventor
王浩
邱嵩
杨晓东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mid Star Technology Ltd By Share Ltd
Vimicro Corp
Original Assignee
Vimicro Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Vimicro Corp filed Critical Vimicro Corp
Priority to CN 200810225748 priority Critical patent/CN101742285B/zh
Publication of CN101742285A publication Critical patent/CN101742285A/zh
Application granted granted Critical
Publication of CN101742285B publication Critical patent/CN101742285B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种视频编码系统和方法、以及一种调节编码位宽的控制装置和方法。本发明根据图像数据的直方图检测出像素亮度值的下限和上限,并根据上限与下限之间的像素亮度值范围所表示的图像数据的亮度动态范围,确定出该图像数据实际所需的编码位宽,然后以计算出的编码位宽配置视频编码器的编码位宽参数的取值、以对视频编码器的编码位宽进行调整,同时以检测到的像素亮度值下限配置视频编码器的亮度偏移量参数的取值,使得视频编码器将图像数据的所有像素值减去亮度偏移量参数的取值之后,直接从图像数据中取相应的低位即可以编码位宽参数的取值为编码位宽对图像数据进行视频编码,避免了硬件资源的浪费和编码速度的降低。

Description

视频编码系统和方法以及调节编码位宽的控制方法和装置
技术领域
本发明涉及控制技术,特别涉及能够调节编码位宽的一种视频编码系统、一种视频编码方法、以及一种调节编码位宽的控制装置和一种调节编码位宽的控制方法。
背景技术
在视频监控领域中,需要对拍摄到的图像数据进行视频编码后在予以传输。图1为现有视频编码系统的结构示意图。如图1所示,该系统包括感光器件11和视频编码器12。
感光器件11输出N位图像数据至视频编码器12;为了保证图像数据的亮度动态范围在编码后不会降低、以避免图像数据中的各种亮度细节丢失,视频编码器12以N位的编码位宽对接收到的图像数据进行视频编码。
其中,N为正整数,N通常为8;对于图像数据的位宽N,其所能够表示的最大亮度动态范围为2N,因此,图像的亮度动态范围越大、需要的位宽N就越大。
由此,为了保证图像数据的亮度范围较大,现有的感光器件11能够输出更高位宽的图像数据,例如10位、12位、甚至16位。相应地,视频编码器12的编码位宽也随之升高。
但是,现有视频编码系统中由于感光器件11的输出位宽是固定不变的、视频编码器12的编码位宽也就相应地固定不变,而在实际应用中随着环境的光线变化,图像数据的亮度动态范围是会随之变化、而非固定不变的,那么,实际需要的编码位宽自然也会随之变化。
例如,在正午太阳光照最强时,图像中的明暗差异很大、图像数据的亮度动态范围也就比较大,图2a为明暗差异较大时的图像直方图,以N取10为例,在图2a中的亮度动态范围在0~1024之间、即210,此时的编码位宽需要10位。而在黄昏或夜间,图像中的明暗差异很小、图像数据的亮度动态范围自然也就比较小,图2b为明暗差异较小时的图像直方图,仍以N取10为例,在图2b中的亮度动态范围在256~768之间、仅为29,此时的编码位宽仅需要9位。
对于上述情况,如果采用固定不变的10位编码位宽,则对于亮度动态范围仅为210的图像数据当然是能够保证其在编码后不会丢失亮度细节;但是,对于亮度动态范围仅为29的图像数据,显然是浪费了视频编码器12的硬件资源,且相对于采用9位编码位宽的视频编码显然是浪费了视频编码器12的编码速度。
可见,由于现有视频编码均采用固定的编码位宽、而无法根据亮度动态范围的变化实时调整编码位宽,因而对于亮度动态范围小于2N的图像数据,如果仍采用N位的编码位宽,则会造成资源的浪费、且相对地降低了视频编码速度。
发明内容
有鉴于此,本发明提供了一种视频编码系统、一种视频编码方法、以及一种调节编码位宽的控制装置和一种调节编码位宽的控制方法,能够根据亮度动态范围的变化实时调整编码位宽。
本发明提供的一种视频编码系统,包括用于输出N位图像数据的感光器件、以及视频编码器,所述视频编码器内部存储有编码位宽参数和亮度偏移量参数,且该系统还包括调节编码位宽的控制装置,其中,
所述调节编码位宽的控制装置包括:
动态范围检测单元,用于检测所述N位图像数据的直方图中满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限,并将检测到的所述上限与所述下限之间的像素亮度值范围确定为所述图像数据的亮度动态范围;
编码位宽配置单元,用于根据所述上限与下限的差计算所述图像数据所需的编码位宽,并将所述编码位宽参数取值P赋值为计算得到的编码位宽、将所述亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界;
所述视频编码器,用于将所述N位图像数据中的所有像素的亮度值减去亮度偏移量参数的取值Q;以编码位宽参数的取值P为编码位宽,对减去亮度偏移量参数的取值Q后的N位图像数据的低P位进行视频编码;
其中,N、P、Q均为正整数。
所述下限和所述上限分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示所述N位图像数据的直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示亮度值落在第j个亮度值区间内的像素个数,0≤j≤k-1、且j为正整数;Min为表示亮度值区间的所述下限、Max为表示亮度值区间的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述动态范围检测单元包括:
区间检测子单元,用于检测表示亮度值区间的所述下限和所述上限;
边界检测子单元,用于检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;
边界差值子单元,用于计算所述上限的上/下边界与所述下限的上/下边界之差,得到当前图像数据的亮度动态范围。
所述下限和所述上限分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为表示像素亮度值的所述下限、Max为表示像素亮度值的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述动态范围检测单元包括:
亮度值检测子单元,用于检测表示像素亮度值的所述下限和所述上限;
亮度值差值子单元,用于计算所述上限与所述下限之差,得到当前图像数据的亮度动态范围。
所述编码位宽配置单元包括:
对数计算子单元,用于计算以2为底的该亮度动态范围的对数;
取整子单元,用于对所述对数向上取整,得到所述图像数据所需的编码位宽;
配置子单元,用于将所述视频编码器中的编码位宽参数的取值P赋值为计算得到的编码位宽、将所述亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界。
所述配置子单元进一步将编码位宽参数取值P和亮度偏移量参数取值Q插入在所述图像数据传输码流的任意预设位置。
所述视频编码器进一步在对减去亮度偏移量参数取值后的N位图像数据进行箝位处理后、再取低P位进行视频编码。
本发明提供的一种视频编码方法,在视频编码器内部设置编码位宽参数和亮度偏移量参数,且该方法包括:
a、检测感光器件输出的N位图像数据的直方图中,满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限;
b、将检测到的所述上限与所述下限之间的像素亮度值范围确定为所述图像数据的亮度动态范围;
c、根据确定的所述图像数据的亮度动态范围计算所述图像数据所需的编码位宽;
d、将所述视频编码器中的编码位宽参数取值P赋值为计算得到的编码位宽、并将所述亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界;
e、视频编码器将所述N位图像数据中的所有像素的亮度值减去亮度偏移量参数的取值Q;
f、以编码位宽参数取值P为编码位宽对减去亮度偏移量参数取值Q后的N位图像数据的低P位进行视频编码;
其中,N、P、Q均为正整数。
所述下限和所述上限分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示所述N位图像数据的直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示亮度值落在第j个亮度值区间内的像素个数,0≤j≤k-1、且j为正整数;Min为表示亮度值区间的所述下限、Max为表示亮度值区间的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述步骤b包括:
b11、检测表示亮度值区间的所述下限和所述上限;
b12、检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;
b13、计算所述上限的上/下边界与所述下限的上/下边界之差,得到当前图像数据的亮度动态范围。
所述下限和所述上限分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为表示像素亮度值的所述下限、Max为表示像素亮度值的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述步骤b包括:
b21、检测表示像素亮度值的所述下限和所述上限;
b22、所述上限与所述下限之差,得到当前图像数据的亮度动态范围。
所述步骤c包括:计算以2为底的该亮度动态范围的对数,并对所述对数向上取整,得到所述图像数据所需的编码位宽。
所述步骤d进一步将编码位宽参数取值P和亮度偏移量参数取值Q插入在该图像数据传输码流的任意预设位置。
所述步骤f进一步在对减去亮度偏移量参数取值后的N位图像数据进行箝位处理后、再取低P位进行视频编码。
本发明提供的一种调节编码位宽的控制装置,该装置包括:
动态范围检测单元,用于检测所述N位图像数据的直方图中满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限,并将检测到的所述上限与所述下限之间的像素亮度值范围确定为所述图像数据的亮度动态范围;
编码位宽配置单元,用于根据所述上限与下限的差计算所述图像数据所需的编码位宽,并将视频编码器中的编码位宽参数取值P赋值为计算得到的编码位宽、将所述视频编码器中的亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界;
其中,N、P、Q均为正整数。
所述下限和所述上限分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示所述N位图像数据的直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示亮度值落在第j个亮度值区间内的像素个数,0≤j≤k-1、且j为正整数;Min为表示亮度值区间的所述下限、Max为表示亮度值区间的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述动态范围检测单元包括:
区间检测子单元,用于检测表示亮度值区间的所述下限和所述上限;
边界检测子单元,用于检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;
边界差值子单元,用于计算所述上限的上/下边界与所述下限的上/下边界之差,得到当前图像数据的亮度动态范围。
所述下限和所述上限分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为表示像素亮度值的所述下限、Max为表示像素亮度值的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述动态范围检测单元包括:
亮度值检测子单元,用于检测表示像素亮度值的所述下限和所述上限;
亮度值差值子单元,用于计算所述上限与所述下限之差,得到当前图像数据的亮度动态范围。
所述编码位宽配置单元包括:
对数计算子单元,用于计算以2为底的该亮度动态范围的对数;
取整子单元,用于对所述对数向上取整,得到所述图像数据所需的编码位宽;
配置子单元,用于将所述视频编码器中的编码位宽参数的取值P赋值为计算得到的编码位宽、将所述亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界。
所述配置子单元进一步将编码位宽参数取值P和亮度偏移量参数取值Q插入在该图像数据传输码流的任意预设位置。
本发明提供的一种调节编码位宽的控制方法,在视频编码器内部设置编码位宽参数和亮度偏移量参数,且该方法包括:
a、检测感光器件输出的N位图像数据的直方图中,满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限;
b、将检测到的所述上限与所述下限之间的像素亮度值范围确定为所述图像数据的亮度动态范围;
c、根据确定的所述图像数据的亮度动态范围计算所述图像数据所需的编码位宽;
d、将所述视频编码器中的编码位宽参数取值P赋值为计算得到的编码位宽、并将所述亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界;
其中,N、P、Q均为正整数。
所述下限和所述上限分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示所述N位图像数据的直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示亮度值落在第j个亮度值区间内的像素个数,0≤j≤k-1、且j为正整数;Min为表示亮度值区间的所述下限、Max为表示亮度值区间的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述步骤b包括:
b11、检测表示亮度值区间的所述下限和所述上限;
b12、检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;
b13、计算所述上限的上/下边界与所述下限的上/下边界之差,得到当前图像数据的亮度动态范围。
所述下限和所述上限分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为表示像素亮度值的所述下限、Max为表示像素亮度值的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述步骤b包括:
b21、检测表示像素亮度值的所述下限和所述上限;
b22、所述上限与所述下限之差,得到当前图像数据的亮度动态范围。
所述步骤c包括:计算以2为底的该亮度动态范围的对数,并对所述对数向上取整,得到所述图像数据所需的编码位宽。
所述步骤d进一步将编码位宽参数取值P和亮度偏移量参数取值Q插入在该图像数据传输码流的任意预设位置。
由上述技术方案可见,本发明根据图像数据的直方图检测出像素亮度值的下限和上限,并根据上限与下限之间的像素亮度值范围所表示的图像数据的亮度动态范围,确定出该图像数据实际所需的编码位宽,然后以计算出的编码位宽配置视频编码器的编码位宽参数的取值、以对视频编码器的编码位宽进行调整,同时以检测到的像素亮度值下限配置视频编码器的亮度偏移量参数的取值,使得视频编码器将图像数据的所有像素值减去亮度偏移量参数的取值之后,直接从图像数据中取相应的低位即可以编码位宽参数的取值为编码位宽对图像数据进行视频编码,避免了硬件资源的浪费和编码速度的降低。
附图说明
图1为现有视频编码系统的结构示意图;
图2a为明暗差异较大时的图像直方图;
图2b为明暗差异较小时的图像直方图;
图3为本发明实施例中视频编码系统的示例性结构图;
图4为本发明实施例中视频编码方法的示例性流程图;
图5a~图5b为本发明实施例中调节编码位宽控制过程的一种原理图;
图6a~图6b为本发明实施例中调节编码位宽控制过程的另一种原理图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
图3为本发明实施例中视频编码系统的示例性结构图。如图3所示,本实施例中的视频编码系统仍包括感光器件31和视频编码器32,但该系统中还包括调节编码位宽的控制装置33。
感光器件31与现有如图1所示的感光器件11的工作原理相同,用于输出N位图像数据至视频编码器32,同时还将该N为图像数据输出至调节编码位宽的控制装置33。其中,N为正整数。
视频编码器32,其内部存储有编码位宽参数和亮度偏移量参数、且编码位宽参数的取值P和亮度偏移量参数的取值Q均可配置,视频编码器32用于将感光器件31输出的N位图像数据中的所有像素的亮度值减去亮度偏移量参数的取值Q,然后以编码位宽参数的取值P为编码位宽,对减去亮度偏移量参数取值后的N位图像数据中的低P位进行视频编码。其中,P和Q均为正整数。
实际应用中,视频编码器32可包括一掉电不丢数据且能够进行写操作存储器(图中未示出),例如闪存(Flash)、非易失性只读存储器(E2PROM)等,用于存储有编码位宽参数和亮度偏移量参数;视频编码器32中还包括一处理器(图中未示出),例如英特尔奔腾第三代(Intel Pentium III)处理器、各种型号的数字处理器(DSP)、各种型号的现场可编程逻辑门阵列(FPGA)等,用于执行视频编码操作,该处理器进行视频编码操作的基本原理与现有如图1所示的视频编码器12相同。
调节编码位宽的控制装置33包括动态范围检测单元331和编码位宽配置单元332。
动态范围检测单元331,用于获取感光器件31输出的N位图像数据转换的直方图,并检测该直方图中满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限,然后将检测到的上限与下限之间的像素亮度值范围确定为当前图像数据的亮度动态范围。
编码位宽配置单元332,用于根据动态范围检测单元331确定的亮度动态范围计算当前图像数据所需的编码位宽,然后将视频编码器32中的编码位宽参数取值P赋值为计算得到的编码位宽、并根据动态范围检测单元331得到的像素亮度值下限配置视频编码器32中的亮度偏移量参数取值Q。
实际应用中,调节编码位宽的控制装置33可以由DSP或FPGA等处理器来实现。
具体来说,在本实施例的视频编码系统中,动态范围检测单元331检测到的满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限,可以有多种定义方式,例如:
方式一,对于感光器件31输出N位图像数据,其直方图中存在0~(2N-1)、共2N个像素亮度值,假设将2N个像素亮度值划分为k个亮度值区间、每个区间包含l=2N/k个像素亮度值,然后分别统计亮度值属于每一个区间的像素个数S(j),0≤j≤k-1、且j为正整数,动态范围检测单元331检测到的直方图中的像素亮度值的下限和上限均表示亮度值区间、且分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M .
其中,k表示直方图中2N个像素亮度值被划分成的区间个数;S(j)表示图像数据中亮度值落在第j个区间内的像素个数,0≤j≤k-1、且j为正整数;Min为所述下限、Max为所述上限;α为预设第一比例因子,β为预设第二比例因子,本实施例中α、β较佳地取1%~5%、且α、β可以相同也可以不同。
方式二,在上述方式一的条件中,如果将2N个像素亮度值划分为2N个区间、即每个区间内只有1个像素点亮度值i,0≤i≤2N-1、且i为正整数,则检测到的该直方图中的像素亮度值的下限和上限均表示像素亮度值、且分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为所述下限、Max为所述上限;α为预设第一比例因子,β为预设第二比例因子,本实施例中α、β较佳地取1%~5%、且α、β可以相同也可以不同。
上述两种方式相比,显然方式一涉及的计算过程更少、计算速度更快,但方式二精度显然更高。
且对于上述两种不同的下限和上限的定义方式,动态范围检测单元331确定当前图像数据的亮度动态范围的方式也就随之不同:
对于下限和上限均表示亮度值区间的方式一,动态范围检测单元331可以包括区间检测子单元、边界检测子单元、边界差值子单元(图中未示出)。其中,区间检测子单元用于在直方图中检测满足方式一的表示亮度值区间的下限和上限;边界检测子单元用于在直方图中检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;边界差值子单元用于计算上限上/下边界与下限上/下边界之差,得到当前图像数据的亮度动态范围(本文中所出现的“/”表示“或”)。
对于下限和上限均表示像素亮度值的方式二,动态范围检测单元331可以包括亮度值检测子单元、亮度值差值子单元(图中未示出)。其中,亮度值检测子单元用于在直方图中检测满足方式二的表示像素亮度值的下限和上限;亮度值差值子单元用于计算上限与下限之差,得到当前图像数据的亮度动态范围。
此外,在本实施例的视频编码系统中,编码位宽配置单元332可以包括对数计算子单元、取整子单元、以及配置子单元(图中未示出),并由对数计算子单元计算以2为底的该亮度动态范围的对数,然后由取整子单元对该对数向上取整,得到当前图像数据所需的编码位宽,再由配置子单元执行对视频编码器32的配置。
对于下限和上限均表示亮度值区间的方式一,编码位宽配置单元332中对数计算子单元和取整子单元的处理过程可以表示为:
Figure GSB00000828501000131
N′表示实际所需的编码位宽、Max_boundary表示上限的上/下边界、Min_boundary表示下限的上/下边界;
且配置子单元将视频编码器32中的编码位宽参数取值P赋值为计算得到的编码位宽、并需要将视频编码器32中的亮度偏移量参数取值Q赋值为动态范围检测单元331得到的像素亮度值下限上/下边界Min_boundary。
对于下限和上限均表示像素亮度值的方式二,编码位宽配置单元332中对数计算子单元和取整子单元的处理过程可以表示为:
Figure GSB00000828501000141
N′表示实际所需的编码位宽、Min为所述下限、Max为所述上限;
且配置子单元将视频编码器32中的编码位宽参数取值P赋值为计算得到的编码位宽、并直接将视频编码器32中的亮度偏移量参数取值Q赋值为动态范围检测单元331得到的像素亮度值下限Min。
对于上限和下限的两种方式,配置子单元对视频编码器32中的亮度偏移量参数取值Q赋值的过程,实质上均是将动态范围检测单元331所确定的当前图像数据的亮度动态范围的下边界赋值给亮度偏移量参数取值Q。也就是说,对于下限和上限均表示亮度值区间的方式一,动态范围检测单元331得到的像素亮度值下限上/下边界Min_boundary为亮度动态范围的下边界;对于下限和上限均表示像素亮度值的方式二,动态范围检测单元331得到的像素亮度值下限Min为亮度动态范围的下边界。
而且,在配置视频编码器32时,编码位宽配置单元332中的配置子单元可以直接对视频编码器32中存储有编码位宽参数和亮度偏移量参数的存储器进行写操作,实现如上所述的配置;当然,为了解码端也能够获知各图像数据的编码位宽和亮度偏移量参数取值,较佳地,编码位宽配置单元332中的配置子单元将该图像数据实际所需的编码位宽和用作亮度偏移量参数取值的下限上/下边界、或下限,即将编码位宽参数取值P和亮度偏移量参数取值Q,插入在该图像数据传输码流的任意预设位置,例如可以在图像数据的头参数中增加如下的语法元素:
{
     亮度偏移量;
     编码位宽;
}
然后由视频编码器32中实现编码操作的处理器,自行对存储有编码位宽参数和亮度偏移量参数的存储器进行写操作,这样,也可以实现如上所述的配置,且解码端能够从码流中获取上述语法元素,以确定图像数据的实际编码位宽和所作的亮度偏移量。
进一步地,在本实施例的视频编码系统中,考虑到如下原因,视频编码器32来说,可以在对减去亮度偏移量参数取值后的N位图像数据进行箝位处理后、再取低P位进行视频编码:
感光器件31输出的N位图像数据中亮度值小于下限的部分像素,在其亮度值减去亮度偏移量取值之后会变为负数;
感光器件31输出的N位图像数据中亮度值大于上限的部分像素,在其亮度值减去亮度偏移量取值之后有可能会大于2P-1,且取低P位后减去亮度偏移量取值之后的亮度值会发生巨变,以N=10、P=8为例,假设某像素的亮度值减去亮度偏移量取值为0010000001、即257,大于255,则取低8位后就变为00000001、即1;
虽然上述两点问题对图像数据在整体视觉效果上不会造成很大的影响,但有可能使得图像数据中出现相邻像素间的较大亮度差,因而会对视频编码速度也会稍有影响。
这样,可以采用的箝位处理具体包括:如果减去亮度偏移量参数取值后的N位图像数据中,存在亮度取值小于0的像素点,则将该像素点的亮度取值设置为0;如果减去亮度偏移量参数取值后的N位图像数据中,存在亮度取值大于等于2P的像素点,则将该像素点的亮度取值设置为(2P-1)。
对于由DSP或FPGA等处理器实现的调节编码位宽的控制装置33来说,只需增加如下的逻辑语句即可:
If(x<0),x=0;
If(x≥2P),x=2P-1。
这样,仍以N=10、P=8为例,假设某像素的亮度值减去亮度偏移量取值为0010000001、即257,大于255,则进行箝位处理后就变为0001111111、即255,那么再取低8位后仍为0001111111,相比于其原值没有发生巨变。
以上,是对本实施例中的视频编码系统、以及该视频编码系统中调节编码位宽的控制装置的详细说明,下面,再对本实施例中的视频编码方法、以及该视频编码方法中调节编码位宽的控制方法进行说明。
图4为本发明实施例中视频编码方法的示例性流程图。在视频编码器中设置取值P可配置的编码位宽参数、以及取值Q可配置的亮度偏移量参数之后,如图4所示,该方法包括:
步骤401,获取感光器件输出的N位图像数据的直方图。
步骤402,检测步骤401得到的直方图中满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限。
步骤403,将步骤402检测到的像素亮度值上限与下限之间的像素亮度值范围确定为当前图像数据的亮度动态范围。
步骤404,根据步骤403得到的亮度动态范围确定当前图像数据所需的编码位宽。
步骤405,将视频编码器中的编码位宽参数取值P赋值为步骤404计算得到的编码位宽、并根据步骤402得到的像素亮度值下限配置视频编码器中的亮度偏移量参数取值Q。
步骤406,将感光器件输出的N位图像数据中的所有像素的亮度值减去亮度偏移量参数的取值Q。
步骤407,以编码位宽参数的取值P为编码位宽,对减去亮度偏移量参数取值Q后的N位图像数据中的低P位进行视频编码。
至此,本流程结束。
上述流程中,步骤401~步骤405即为本实施例中调节编码位宽的控制方法具体处理流程。
具体来说,在本实施例的视频编码方法中,步骤402检测到的满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限,可以有多种定义方式,例如:
方式一,像素亮度值的下限和上限均表示亮度值区间、且分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示图像数据中亮度值落在第j个区间内的像素个数,0≤j≤k-1、且j为正整数;Min为所述下限、Max为所述上限;α为预设第一比例因子,β为预设第二比例因子,本实施例中α、β较佳地取1%~5%、且α、β可以相同也可以不同。
方式二,像素亮度值的下限和上限均表示像素亮度值、且分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为所述下限、Max为所述上限;α为预设第一比例因子,β为预设第二比例因子,本实施例中α、β较佳地取1%~5%、且α、β可以相同也可以不同。
且对于上述两种不同的下限和上限的定义方式,步骤403确定当前图像数据的亮度动态范围的方式也就随之不同:
对于下限和上限均表示亮度值区间的方式一,步骤403的处理过程可以为,在直方图中检测满足方式一的表示亮度值区间的下限和上限,然后在直方图中检测表示的像素亮度值的下限上/下边界、以及表示的像素亮度值的上限上/下边界处的像素亮度值,最后再计算上限上/下边界与下限上/下边界之差,得到当前图像数据的亮度动态范围;
对于下限和上限均表示像素亮度值的方式二,步骤403的处理过程可以为,在直方图中检测满足方式二的表示像素亮度值的下限和上限,然后计算上限与下限之差,得到当前图像数据的亮度动态范围。
此外,在本实施例的视频编码方法中,步骤404的具体处理过程可以包括:对数计算子单元计算以2为底的该亮度动态范围的对数,再对该对数向上取整,得到当前图像数据所需的编码位宽。
对于下限和上限均表示亮度值区间的方式一,步骤404的具体处理过程可以表示为:
Figure GSB00000828501000181
N′表示实际所需的编码位宽、Max_boundary表示上限的上/下边界、Min_boundary表示下限的上/下边界;且在步骤405,将视频编码器中的编码位宽参数的取值P赋值为计算得到的编码位宽N′、并需要将视频编码器中的亮度偏移量参数取值Q赋值为像素亮度值下限上/下边界Min_boundary。
对于下限和上限均表示像素亮度值的方式二,步骤404的具体处理过程可以表示为:
Figure GSB00000828501000182
N′表示实际所需的编码位宽、Min为所述下限、Max为所述上限;且在步骤405,将视频编码器中的编码位宽参数的取值P赋值为计算得到的编码位宽N′、并可直接将视频编码器中的亮度偏移量参数取值Q赋值为像素亮度值下限Min。
对于上限和下限的两种方式,步骤404中对视频编码器32中的亮度偏移量参数取值Q赋值的过程,实质上均是将步骤403所确定的当前图像数据的亮度动态范围的下边界赋值给亮度偏移量参数取值Q。也就是说,对于下限和上限均表示亮度值区间的方式一,像素亮度值下限上/下边界Min_boundary为亮度动态范围的下边界;对于下限和上限均表示像素亮度值的方式二,像素亮度值下限Min为亮度动态范围的下边界。
而在本实施例的视频编码方法的步骤405中,可以直接对视频编码器中存储有编码位宽参数和亮度偏移量参数的存储器进行写操作,实现如上所述的配置;当然,为了解码端也能够获知各图像数据的编码位宽和亮度偏移量参数取值,较佳地,可以将该图像数据的实际所需的编码位宽和用作亮度偏移量参数取值的下限上/下边界、或下限,即将编码位宽参数取值P和亮度偏移量参数取值Q,插入在该图像数据传输码流的任意预设位置,例如可以在图像数据的头参数中增加如下的语法元素:
{
     亮度偏移量;
     编码位宽;
}
然后由视频编码器中实现编码操作的处理器,自行对存储有编码位宽参数和亮度偏移量参数的存储器进行写操作,这样,也可以实现如上所述的配置,且解码端能够从码流中获取上述语法元素,以确定图像数据的实际编码位宽和所作的亮度偏移量。
进一步地,在本实施例的视频编码方法中,考虑到在如前所述的视频编码系统已详细说明的原因,在步骤406中,视频编码器可以进一步对减去亮度偏移量参数取值后的N位图像数据进行箝位处理后、再取低P位进行视频编码。
其中,箝位处理可具体包括:如果减去亮度偏移量参数取值后的N位图像数据中,存在亮度取值小于0的像素点,则将该像素点的亮度取值设置为0;如果减去亮度偏移量参数取值后的N位图像数据中,存在亮度取值大于等于2P的像素点,则将该像素点的亮度取值设置为(2P-1)。
可见,本实施例根据图像数据的直方图检测出像素亮度值的下限和上限,并根据上限与下限之间的像素亮度值范围所表示的图像数据的亮度动态范围,确定出该图像数据实际所需的编码位宽,然后以计算出的编码位宽配置视频编码器的编码位宽参数的取值、以对视频编码器的编码位宽进行调整,同时以检测到的像素亮度值下限配置视频编码器的亮度偏移量参数的取值,使得视频编码器将图像数据的所有像素值减去亮度偏移量参数的取值之后,直接从图像数据中取相应的低位即可以编码位宽参数的取值为编码位宽对图像数据进行视频编码,避免了硬件资源的浪费和编码速度的降低。
下面,再结合两个实例对本实施例中的技术方案进行进一步说明。
实例一:
假设感光器件输出的图像数据的位数N=10、且该图像数据共包含M个像素,M为正整数。
参见图5a,对于下限和上限均表示亮度值区间的方式一,将0~1023共1024个像素亮度值划分为64个区间、每个区间包含16个像素点亮度值,然后分别统计亮度值属于每一个区间的像素个数S(j),0≤j≤63、且j为正整数,则检测到的该直方图中,表示亮度值区间的下限Min和上限Max应当分别满足:
Figure GSB00000828501000201
α为预设第一比例因子,本实施例中较佳地取1%~5%;
Figure GSB00000828501000203
Figure GSB00000828501000204
β为预设第二比例因子,本实施例中较佳地取1%~5%。
然后,再假设α和β均取1%(α和β也可以不同),即直方图中位于下限Min左侧的像素个数之和为总像素个数M的1%、直方图中位于上限Max右侧的像素个数之和也为总像素个数M的1%,则检测到的下限Min为31、检测到的上限Max约为46。
此后,计算上限Max上边界751与下限Min上边界511之差,得到当前图像数据的亮度动态范围为240。当然,也可以计算上限Max下边界736与下限Min上边界511之差、或上限Max下边界736与下限Min下边界495之差、或上限Max上边界751与下限Min下边界495之差,那么对应的当前图像数据的亮度动态范围分别为224、240、254,差别只有每个区间包含的像素点亮度值个数,由此,实际应用中在计算时究竟以上边界为准还是下边界为准,可以任意设定。
这样,根据计算得到的亮度动态范围,即可计算当前图像数据所需的编码位宽N′:
Figure GSB00000828501000205
计算出当前图像数据所需的编码位宽N′之后,将视频编码器内部的编码位宽参数的取值P赋值为N′,从而对于位宽10位的当前图像数据,即可根据其亮度动态范围将编码位宽调整为8位。
但是,对于视频编码器来说,应当从其接收到的10位当前数据中选择哪8位进行视频编码是不确定的,因此还需要将视频编码器中的亮度值偏移量参数取值Q赋值为下限Min上边界511。
这样,视频编码器在进行视频编码之前,首先将当前图像数据的所有像素亮度值均减去作为亮度偏移量参数取值Q的下限Min上边界511。参见图5b,减去亮度偏移量参数取值,就相当于将该当前图像数据的直方图向左平移,直至如图5a所示直方图中的下限Min上边界511与如图5b所示直方图中坐标原点重合。然后,视频编码器即可从其接收到的10位当前数据中选择低8位进行视频编码,即对当前图像中位于如图5b所示的向左平移后的直方图中像素亮度值为0~255之间的部分进行视频编码。
如此一来,即实现了视频编码器的编码位宽的调整,且调整编码位宽后的视频编码过程。
当然,在减去亮度偏移量取值Q之后,图5a中位于下限Min上边界511左侧的全部像素亮度值为负数、位于上限Max上边界751右侧的部分像素亮度值会大于28,即丢失了如图5a所示直方图中位于下限Min上边界511左侧的1%的全部像素真实的亮度值、以及位于上限Max上边界751右侧的部分像素真实的亮度值,这虽然对于全部图像数据的效果没有明显的影响,但由于位于下限Min上边界511左侧的全部像素亮度值、以及位于上限Max上边界751右侧的部分像素亮度值在取低8位后会出现如本文前述的问题,因此,可以先对减去亮度偏移量参数取值后的10位图像数据进行箝位处理后、再取低8位进行视频编码。
实例二:
假设感光器件输出的图像数据的位数N=10、且该图像数据共包含M个像素,M为正整数。
参见图6a,对于下限和上限均表示像素亮度值的方式二,将0~1023共1024个像素亮度值划分为1024个区间、即每个区间内只有1个像素点亮度值i,0≤i≤210-1、且i为正整数,则检测到的该直方图中的像素亮度值的下限Min和上限Max均表示具体的像素亮度值、且分别满足:
Figure GSB00000828501000221
Figure GSB00000828501000222
α为预设第一比例因子,本实施例中较佳地取1%~5%;
Figure GSB00000828501000223
Figure GSB00000828501000224
β为预设第二比例因子,本实施例中较佳地取1%~5%;
其中,H[i]为表示直方图中像素亮度值为i的像素个数。
然后,再假设α和β均取1%(α和β也可以不同),即直方图中位于下限Min左侧的像素个数之和为总像素个数M的1%、直方图中位于上限Max右侧的像素个数之和也为总像素个数M的1%,则检测到的下限Min约为511、检测到的上限Max约为759。
此后,如图6a所示,检测得到的下限Min约为511、检测到的上限Max约为759,则计算得到该当前图像数据的亮度动态范围为238。
计算得到该当前图像数据的亮度动态范围后,再计算以2为底的该亮度动态范围的对数、并对该对数向上取整,即可得到当前图像数据所需的编码位宽N′:
Figure GSB00000828501000225
计算出当前图像数据所需的编码位宽N′之后,将视频编码器内部的编码位宽参数的取值P赋值为N′,从而对于位宽10位的当前图像数据,即可根据其亮度动态范围将编码位宽调整为8位。
但是,对于视频编码器来说,应当从其接收到的10位当前数据中选择哪8位进行视频编码是不确定的,因此还需要将视频编码器中的亮度值偏移量参数取值Q赋值为下限Min511。
这样,视频编码器在进行视频编码之前,首先将当前图像数据的所有像素亮度值均减去作为亮度偏移量参数取值Q的下限Min511。参见图6b,减去亮度偏移量参数取值,就相当于将该当前图像数据的直方图向左平移,直至如图6a所示直方图中的下限Min511与如图6b所示直方图中坐标原点重合。然后,视频编码器即可从其接收到的10位当前数据中选择低8位进行视频编码,即对当前图像中位于如图6b所示的向左平移后的直方图中像素亮度值为0~255之间的部分进行视频编码。
如此一来,即实现了视频编码器的编码位宽的调整,且调整编码位宽后的视频编码过程。
当然,在减去亮度偏移量取值Q之后,图6a中位于下限Min511左侧的全部像素亮度值为负数、位于上限Max759右侧的部分像素亮度值会大于28,即丢失了如图5a所示直方图中位于下限Min511左侧的1%的全部像素真实的亮度值、以及位于上限Max759右侧的部分像素真实的亮度值,这虽然对于全部图像数据的效果没有明显的影响,但由于位于下限Min511左侧的全部像素亮度值、以及位于上限Max759右侧的部分像素亮度值在取低8位后会出现如本文前述的问题,因此,可以先对减去亮度偏移量参数取值后的10位图像数据进行箝位处理后、再取低8位进行视频编码。
如上述两个实例可知,为了尽可能地减少调整编码位宽所丢弃的像素亮度值,预设第一比例因子α、预设第二比例因子β当然是越小越好。
相应地,由于视频编码器在视频编码之前将当前图像数据的所有像素亮度值均减去亮度偏移量参数取值,因而降低了当前图像数据的整体亮度,那么在视频解码端,如果需要恢复当前图像数据的原有整体亮度,只需在解码之后将当前图像数据的所有像素亮度值均加上相同的亮度偏移量取值即可。
对于上述两个实例,假设视频编码器中的处理器是由英特尔奔腾第三代(Intel Pentium III)处理器实现的,该处理器具有一名为“psadbw”的指令,用于同时比较图像数据的两个不同宏块中所对应的16个8位像素值,以大幅提高视频编码器的计算速度。
对于大于8位的图像数据,则无法利用该指令来提高视频编码器的计算速度。但是,当图像数据的亮度动态范围由于外部环境的变化而由大于28的任一值变化为小于28的任一值时,编码位宽可由大于8的任一值调整为对应图像数据当前亮度动态范围的小于等于8的值,那么,此时即可利用名为“psadbw”的指令来提高视频编码器的计算速度。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。

Claims (22)

1.一种视频编码系统,包括用于输出N位图像数据的感光器件、以及视频编码器,其特征在于,所述视频编码器内部存储有编码位宽参数和亮度偏移量参数,且该系统还包括调节编码位宽的控制装置,其中,
所述调节编码位宽的控制装置包括:
动态范围检测单元,用于检测所述N位图像数据的直方图中满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限,并将检测到的所述上限与所述下限之间的像素亮度值范围确定为所述图像数据的亮度动态范围;
编码位宽配置单元,用于根据所述上限与下限的差计算所述图像数据所需的编码位宽,并将所述编码位宽参数取值P赋值为计算得到的编码位宽、将所述亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界;
所述视频编码器,用于将所述N位图像数据中的所有像素的亮度值减去亮度偏移量参数的取值Q;以编码位宽参数的取值P为编码位宽,对减去亮度偏移量参数的取值Q后的N位图像数据的低P位进行视频编码;
其中,N、P、Q均为正整数。
2.如权利要求1所述的系统,其特征在于,所述下限和所述上限分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示所述N位图像数据的直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示亮度值落在第j个亮度值区间内的像素个数,0≤j≤k-1、且j为正整数;Min为表示亮度值区间的所述下限、Max为表示亮度值区间的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述动态范围检测单元包括:
区间检测子单元,用于检测表示亮度值区间的所述下限和所述上限;
边界检测子单元,用于检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;
边界差值子单元,用于计算所述上限的上/下边界与所述下限的上/下边界之差,得到当前图像数据的亮度动态范围。
3.如权利要求1所述的系统,其特征在于,所述下限和所述上限分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为表示像素亮度值的所述下限、Max为表示像素亮度值的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述动态范围检测单元包括:
亮度值检测子单元,用于检测表示像素亮度值的所述下限和所述上限;
亮度值差值子单元,用于计算所述上限与所述下限之差,得到当前图像数据的亮度动态范围。
4.如权利要求1至3中任意一项所述的系统,其特征在于,所述编码位宽配置单元包括:
对数计算子单元,用于计算以2为底的该亮度动态范围的对数;
取整子单元,用于对所述对数向上取整,得到所述图像数据所需的编码位宽;
配置子单元,用于将所述视频编码器中的编码位宽参数的取值P赋值为计算得到的编码位宽、将所述亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界。
5.如权利要求4所述的系统,其特征在于,所述配置子单元进一步将编码位宽参数取值P和亮度偏移量参数取值Q插入在所述图像数据传输码流的任意预设位置。
6.如权利要求1至3中任意一项所述的系统,其特征在于,所述视频编码器进一步在对减去亮度偏移量参数取值后的N位图像数据进行箝位处理后、再取低P位进行视频编码。
7.一种视频编码方法,其特征在于,在视频编码器内部设置编码位宽参数和亮度偏移量参数,且该方法包括:
a、检测感光器件输出的N位图像数据的直方图中,满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限;
b、将检测到的所述上限与所述下限之间的像素亮度值范围确定为所述图像数据的亮度动态范围;
c、根据确定的所述图像数据的亮度动态范围计算所述图像数据所需的编码位宽;
d、将所述视频编码器中的编码位宽参数取值P赋值为计算得到的编码位宽、并将所述亮度偏移量参数取值Q赋值为所述图像数据的亮度动态范围的下边界;
e、视频编码器将所述N位图像数据中的所有像素的亮度值减去亮度偏移量参数取值Q;
f、以编码位宽参数取值P为编码位宽对减去亮度偏移量参数取值Q后的N位图像数据的低P位进行视频编码;
其中,N、P、Q均为正整数。
8.如权利要求7所述的方法,其特征在于,所述下限和所述上限分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min - 1 S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示所述N位图像数据的直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示亮度值落在第j个亮度值区间内的像素个数,0≤j≤k-1、且j为正整数;Min为表示亮度值区间的所述下限、Max为表示亮度值区间的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述步骤b包括:
b11、检测表示亮度值区间的所述下限和所述上限;
b12、检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;
b13、计算所述上限的上/下边界与所述下限的上/下边界之差,得到当前图像数据的亮度动态范围。
9.如权利要求7所述的方法,其特征在于,所述下限和所述上限分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为表示像素亮度值的所述下限、Max为表示像素亮度值的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述步骤b包括:
b21、检测表示像素亮度值的所述下限和所述上限;
b22、所述上限与所述下限之差,得到当前图像数据的亮度动态范围。
10.如权利要求7至9中任意一项所述的方法,其特征在于,所述步骤c包括:计算以2为底的该亮度动态范围的对数,并对所述对数向上取整,得到所述图像数据所需的编码位宽。
11.如权利要求7至9中任意一项所述的方法,其特征在于,所述步骤d进一步将编码位宽参数取值P和亮度偏移量参数取值Q插入在该图像数据传输码流的任意预设位置。
12.如权利要求7至9中任意一项所述的方法,其特征在于,所述步骤f进一步在对减去亮度偏移量参数取值后的N位图像数据进行箝位处理后、再取低P位进行视频编码。
13.一种调节编码位宽的控制装置,其特征在于,该装置包括:
动态范围检测单元,用于检测所述N位图像数据的直方图中满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限,并将检测到的所述上限与所述下限之间的像素亮度值范围确定为所述图像数据的亮度动态范围;
编码位宽配置单元,用于根据所述上限与下限的差计算所述图像数据所需的编码位宽,并将视频编码器中的编码位宽参数取值P赋值为计算得到的编码位宽、将所述视频编码器中的亮度偏移量参数取值Q赋值为确定的所述图像数据的亮度动态范围的下边界;
其中,N、P、Q均为正整数。
14.如权利要求13所述的装置,其特征在于,所述下限和所述上限分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示所述N位图像数据的直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示亮度值落在第j个亮度值区间内的像素个数,0≤j≤k-1、且j为正整数;Min为表示亮度值区间的所述下限、Max为表示亮度值区间的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述动态范围检测单元包括:
区间检测子单元,用于检测表示亮度值区间的所述下限和所述上限;
边界检测子单元,用于检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;
边界差值子单元,用于计算所述上限的上/下边界与所述下限的上/下边界之差,得到当前图像数据的亮度动态范围。
15.如权利要求13所述的装置,其特征在于,所述下限和所述上限分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为表示像素亮度值的所述下限、Max为表示像素亮度值的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述动态范围检测单元包括:
亮度值检测子单元,用于检测表示像素亮度值的所述下限和所述上限;
亮度值差值子单元,用于计算所述上限与所述下限之差,得到当前图像数据的亮度动态范围。
16.如权利要求13至15中任意一项所述的装置,其特征在于,所述编码位宽配置单元包括:
对数计算子单元,用于计算以2为底的该亮度动态范围的对数;
取整子单元,用于对所述对数向上取整,得到所述图像数据所需的编码位宽;
配置子单元,用于将所述视频编码器中的编码位宽参数的取值P赋值为计算得到的编码位宽、将所述亮度偏移量参数取值Q赋值为确定的所述图像数据的亮度动态范围的下边界。
17.如权利要求16所述的装置,其特征在于,所述配置子单元进一步将编码位宽参数取值P和亮度偏移量参数取值Q插入在该图像数据传输码流的任意预设位置。
18.一种调节编码位宽的控制方法,其特征在于,在视频编码器内部设置编码位宽参数和亮度偏移量参数,且该方法包括:
a、检测感光器件输出的N位图像数据的直方图中,满足预设第一比例因子的像素亮度值下限、以及满足预设第二比例因子的像素亮度值上限;
b、将检测到的所述上限与所述下限之间的像素亮度值范围确定为所述图像数据的亮度动态范围;
c、根据确定的所述图像数据的亮度动态范围计算所述图像数据所需的编码位宽;
d、将所述视频编码器中的编码位宽参数取值P赋值为计算得到的编码位宽、并将所述亮度偏移量参数取值Q赋值为确定的所述图像数据的亮度动态范围的下边界;
其中,N、P、Q均为正整数。
19.如权利要求18所述的方法,其特征在于,所述下限和所述上限分别满足:
&Sigma; j = 0 Min S ( j ) &GreaterEqual; &alpha; &times; M , &Sigma; j = 0 Min S ( j ) < &alpha; &times; M ;
&Sigma; j = Max k - 1 S ( j ) &GreaterEqual; &beta; &times; M , &Sigma; j = Max + 1 k - 1 S ( j ) < &beta; &times; M ;
其中,k表示所述N位图像数据的直方图中2N个像素亮度值被划分成的亮度值区间个数;S(j)表示亮度值落在第j个亮度值区间内的像素个数,0≤j≤k-1、且j为正整数;Min为表示亮度值区间的所述下限、Max为表示亮度值区间的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述步骤b包括:
b11、检测表示亮度值区间的所述下限和所述上限;
b12、检测表示亮度值区间的下限的上/下边界、以及表示亮度值区间的上限的上/下边界;
b13、计算所述上限的上/下边界与所述下限的上/下边界之差,得到当前图像数据的亮度动态范围。
20.如权利要求18所述的方法,其特征在于,所述下限和所述上限分别满足:
&Sigma; i = 0 Min H [ i ] &GreaterEqual; &alpha; &times; M , &Sigma; i = 0 Min - 1 H [ i ] < &alpha; &times; M ;
&Sigma; i = Max 2 N - 1 H [ i ] &GreaterEqual; &beta; &times; M , &Sigma; i = Max + 1 2 N - 1 H [ i ] < &beta; &times; M ;
其中,H[i]为表示直方图中像素亮度值为i的像素个数,0≤i≤2N-1、且i为正整数;Min为表示像素亮度值的所述下限、Max为表示像素亮度值的所述上限;α为预设第一比例因子,β为预设第二比例因子;M为所述N位图像数据的总像素个数;
且,所述步骤b包括:
b21、检测表示像素亮度值的所述下限和所述上限;
b22、所述上限与所述下限之差,得到当前图像数据的亮度动态范围。
21.如权利要求18至20中任意一项所述的方法,其特征在于,所述步骤c包括:计算以2为底的该亮度动态范围的对数,并对所述对数向上取整,得到所述图像数据所需的编码位宽。
22.如权利要求18至20中任意一项所述的方法,其特征在于,所述步骤d进一步将编码位宽参数取值P和亮度偏移量参数取值Q插入在该图像数据传输码流的任意预设位置。
CN 200810225748 2008-11-11 2008-11-11 视频编码系统和方法以及调节编码位宽的控制方法和装置 Active CN101742285B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200810225748 CN101742285B (zh) 2008-11-11 2008-11-11 视频编码系统和方法以及调节编码位宽的控制方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200810225748 CN101742285B (zh) 2008-11-11 2008-11-11 视频编码系统和方法以及调节编码位宽的控制方法和装置

Publications (2)

Publication Number Publication Date
CN101742285A CN101742285A (zh) 2010-06-16
CN101742285B true CN101742285B (zh) 2013-04-24

Family

ID=42465065

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200810225748 Active CN101742285B (zh) 2008-11-11 2008-11-11 视频编码系统和方法以及调节编码位宽的控制方法和装置

Country Status (1)

Country Link
CN (1) CN101742285B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2487717B (en) * 2011-01-25 2017-06-21 Advanced Risc Mach Ltd Image encoding method
CN102158653B (zh) * 2011-05-03 2013-01-16 东华大学 一种实时高动态范围数字图像获取装置及方法
CN104270629A (zh) * 2014-08-19 2015-01-07 西安电子科技大学 一种tod法性能测试系统及测试方法
CN109309826B (zh) * 2017-07-27 2020-11-13 Tcl科技集团股份有限公司 图像色彩均衡方法、装置、终端设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1531347A (zh) * 2003-03-10 2004-09-22 三菱电机株式会社 图象信号编码装置及图象信号编码方法
EP1655968A2 (en) * 2004-11-09 2006-05-10 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image data
EP1827024A1 (en) * 2006-02-24 2007-08-29 Sharp Kabushiki Kaisha High dynamic range video coding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1531347A (zh) * 2003-03-10 2004-09-22 三菱电机株式会社 图象信号编码装置及图象信号编码方法
EP1655968A2 (en) * 2004-11-09 2006-05-10 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image data
EP1827024A1 (en) * 2006-02-24 2007-08-29 Sharp Kabushiki Kaisha High dynamic range video coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2000-32487A 2000.01.28

Also Published As

Publication number Publication date
CN101742285A (zh) 2010-06-16

Similar Documents

Publication Publication Date Title
CN108337000B (zh) 用于转换到较低精度数据格式的自动方法
CN112085186B (zh) 一种神经网络的量化参数确定方法及相关产品
CN101742285B (zh) 视频编码系统和方法以及调节编码位宽的控制方法和装置
US9330446B2 (en) Method and apparatus for processing image
KR20170032152A (ko) 양어장의 급이 제어방법 및 그 장치
CN102088602B (zh) 一种jpeg-ls图像压缩的码率控制方法
CN107770525B (zh) 一种图像编码的方法及装置
CN114324780A (zh) 大气污染物排放通量处理方法、存储介质以及计算机终端
CN110598839A (zh) 卷积神经网络系统和卷积神经网络量化的方法
CN110631221A (zh) 一种空调的控制方法、装置、终端及存储介质
CN116819029B (zh) 一种河道水污染监测方法及系统
JP7083269B2 (ja) 凝集を伴う水処理プラントの制御方法および制御装置
CN105070251A (zh) 背光控制方法及装置
CN110956679A (zh) 图像处理方法和装置、电子设备、计算机可读存储介质
AU2017443986B2 (en) Color adaptation using adversarial training networks
CN1436424A (zh) 用于图像相关性最小失真计算的自适应尽快退出技术
CN105338214A (zh) 图像处理方法和图像处理装置
CN104657960A (zh) 一种灰度图像对比度拉伸方法及装置
CN116110237B (zh) 一种基于灰色马尔科夫链的信号灯控制方法及装置及介质
CN115830143A (zh) 联合标定参数调整方法、装置、计算机设备和存储介质
CN108053805B (zh) 一种双通道相机左右两通道图像的亮度校正方法
CN106791846B (zh) 一种图像编码质量因子的调整方法和装置
CN109447911A (zh) 图像复原的方法、装置、存储介质和终端设备
CN117221747B (zh) 一种基于sopc的单周期坏点补偿与非均匀校正方法
CN115760646B (zh) 一种针对不规则孔洞的多模态人脸图像修复方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20171221

Address after: 100083 Haidian District, Xueyuan Road, No. 35, the world building, the second floor of the building on the ground floor, No. 16

Co-patentee after: Vimicro Electronics Co., Ltd.

Patentee after: Zhongxing Technology Co., Ltd.

Address before: 100083, Haidian District, Xueyuan Road, Beijing No. 35, Nanjing Ning building, 15 Floor

Co-patentee before: Vimicro Electronics Co., Ltd.

Patentee before: Beijing Vimicro Corporation

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100083 Haidian District, Xueyuan Road, No. 35, the world building, the second floor of the building on the ground floor, No. 16

Co-patentee after: Vimicro Electronics Co., Ltd.

Patentee after: Mid Star Technology Limited by Share Ltd

Address before: 100083 Haidian District, Xueyuan Road, No. 35, the world building, the second floor of the building on the ground floor, No. 16

Co-patentee before: Vimicro Electronics Co., Ltd.

Patentee before: Zhongxing Technology Co., Ltd.