CN109961404A - 一种基于gpu并行计算的高清视频图像增强方法 - Google Patents

一种基于gpu并行计算的高清视频图像增强方法 Download PDF

Info

Publication number
CN109961404A
CN109961404A CN201711415145.8A CN201711415145A CN109961404A CN 109961404 A CN109961404 A CN 109961404A CN 201711415145 A CN201711415145 A CN 201711415145A CN 109961404 A CN109961404 A CN 109961404A
Authority
CN
China
Prior art keywords
gpu
video frame
video
frame image
image
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.)
Pending
Application number
CN201711415145.8A
Other languages
English (en)
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.)
Shenyang Jing Jing Intelligent Technology Co Ltd
Original Assignee
Shenyang Jing Jing Intelligent Technology Co Ltd
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 Shenyang Jing Jing Intelligent Technology Co Ltd filed Critical Shenyang Jing Jing Intelligent Technology Co Ltd
Priority to CN201711415145.8A priority Critical patent/CN109961404A/zh
Publication of CN109961404A publication Critical patent/CN109961404A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/646Circuits for processing colour signals for image enhancement, e.g. vertical detail restoration, cross-colour elimination, contour correction, chrominance trapping filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)

Abstract

一种基于GPU并行计算的高清视频图像增强方法,采用计算统一设备架构(CUDA)编程模型,其特征在于,包括以下步骤:读入高清视频帧图像,初始化GPU,分别为高清视频帧图像RGB三通道数据分配一Kernel函数,RGB三通道数据类型由BYTE型转为double型,再转换到对数域中,像素点灰度值校正的起点和终点选取,线性拉伸增强后的RGB三通道图像,之后按R、G、B顺序依次写入一个24位的彩色图像,计算结果传回CPU端输出保存,直至所有需要图像增强处理高清视频帧图像处理完成之后释放GPU显存。本发明实现了高清视频图像的增强,实现了算法的GPU并行加速,有效提高了处理效率,实现了高清视频的实时要求,可在普通终端(普通电脑)上运行,有效地降低了成本。

Description

一种基于GPU并行计算的高清视频图像增强方法
技术领域
本发明涉及并行计算领域,以及图像处理技术领域,尤其涉及一种基于GPU并行计算的高清视频图像增强方法。
背景技术
目前由于高清数字摄像机的普及,存在着海量的高清视频数据,由于雾霾、低照度、环境光等影响,使得其中大量的视频数据无法看清或色彩失真,视频图像的视觉效果受到严重影响,需要对视频及图像在输出前进行增强处理,以达到适合观看的效果。
现有的Retinex算法,图像增强效果较好,且适应性较强,但主要存在的问题是在CPU的处理效率较低,针对高清视频处理达不到实时(25帧/秒),或者需要更高端的服务器或图像工作站来处理,成本较高。
另外,目前迫切需要一种在普通终端(普通电脑)上可以运行的图像增强算法,来处理高清视频,使其达到实时或超实时以适合视觉观看。
发明内容
为克服现有技术的不足,本发明提供了一种基于GPU并行计算的高清视频图像增强方法,结合GPU对 Retinex算法进行优化处理,使其可以在普通台式电脑处理高清视频达到实时或超实时的能力。
为此,本发明实施例提供了如下技术方案:
一种基于GPU并行计算的高清视频图像增强方法,其特征在于,包括以下步骤:
步骤1:根据高清视频帧序列依次读入原始高清视频帧图像S(i,j),获取原始高清视频帧图像RGB通道数据SR(i,j)、SG(i,j)和SB(i,j)及帧图像尺寸信息,所述帧图像尺寸信息包括帧图像的高度height和宽度width;
步骤2:GPU初始化,包括设置纹理及CUDA数组类型,为数据开辟GPU显存,将所述原始高清视频帧图像RGB通道数据赋值予CUDA数组并绑定纹理内存A;
步骤3:为所述原始高清视频帧图像RGB三通道数据分别分配一Kernel函数,依据所述高清视频帧图像尺寸信息确定执行每个Kernel函数的线程数目,包括设置block尺寸和设置grid尺寸,所述block,是指GPU线程块单元,所述grid,是指GPU线程网单元;
步骤4:分别启动所述三个Kernel函数,从所述纹理内存A中分别读取所述原始高清视频帧图像RGB通道数据,数据类型由BYTE型转为double型,并将数据转换到对数域中,即S’(i,j)=log S(i,j),将计算结果存入所述CUDA数组并与纹理内存B绑定,之后清空纹理内存A;
步骤5:分别启动所述三个Kernel函数,从所述纹理内存B中读取所述原始高清视频帧图像RGB各通道对数域数据,分别对其进行图像增强处理,将增强后的高清视频帧图像RGB各通道数据存入所述CUDA数组并与纹理内存C绑定,之后清空纹理内存B;
步骤6:分别启动所述三个Kernel函数,分别从所述纹理内存C中读取所述增强后的高清视频帧图像RGB各通道数据进行线性拉伸,将线性拉伸后的3幅图像L(i,j)按R、G、B顺序依次写入一个24位的彩色图像中,将计算结果传回CPU端,输出保存,之后清空纹理内存C,所述线性拉伸公式为下述公式,max和min分别表示最大灰度值和最小灰度值;
步骤7:直至所有需要图像增强处理高清视频帧图像处理完成之后,释放GPU显存。
其中,所述步骤5还包括以下步骤:
步骤51:将增强后的结果图像R(i,j)中的像素点的灰度值都初始化为constant,即R(i,j)=constant;
步骤52:水平方向上,令h=width/2,计算S’(i,j)与S’(i+h,j)之间的相对明暗关系Relation(i,j),通过下述公式对R(i,j)进行修正;
步骤53:垂直方向上,令l=height/2,计算S’(i,j)与S’(i,j+l)之间的相对明暗关系Relation(i,j),通过下述公式对R(i,j)进行修正;
步骤54:令h=h/2,l=l/2,重复步骤4和步骤5,直到h=1且,l=1。
优选的,所述block尺寸,可设置为256或512,所述grid尺寸依据所述图像尺寸信息和block尺寸设置。
优选的,所述步骤3中可配置block为32×32二维线程块,grid尺寸根据下述公式确定:
其中,blockX为线程块X方向尺寸,blockY为线程块Y方向尺寸,gridX为线程网X方向尺寸,gridY为线程网Y方向尺寸,width为图像宽度,height为图像高度。
所述步骤5中所述的线性拉伸方法还可用直方图截取的线性拉伸方法或者自适应的线性拉伸方法。
与现有技术相比,本发明的实施例具有如下优点:
本发明提出的基于GPU并行计算的高清视频图像增强方法,实现了高清视频图像的增强,利用CUDA技术,实现了算法的GPU并行加速,有效提高了处理效率。本发明图像增强算法的全部步骤均在GPU上实现,因此只需一次CPU端到GPU端及一次GPU端到CPU端的数据传递,避免数据频繁传递,从而有利于算法效率的提高。传至GPU端的数据大多存入纹理存储器,降低了数据的读取速度,进一步保证了算法的处理效率。
本发明提出的基于GPU并行计算的高清视频图像增强方法,实现了高清视频的实时要求,可在普通终端(普通电脑)上运行,有效地降低了成本。
附图说明
图1是本发明实施例提供的一种基于GPU并行计算的高清视频图像增强方法的方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,该方法包括以下步骤:
步骤101,读入高清视频帧图像。根据高清视频帧序列依次读入原始高清视频帧图像S(i,j),获取原始高清视频帧图像RGB通道数据SR(i,j)、SG(i,j)和SB(i,j)及帧图像尺寸信息,所述帧图像尺寸信息包括帧图像的高度height和宽度width。
步骤102,初始化GPU。GPU初始化包括设置纹理及CUDA数组类型,为数据开辟GPU显存,将所述原始高清视频帧图像RGB通道数据赋值予CUDA数组并绑定纹理内存A。
步骤103,分配Kernel函数。为所述原始高清视频帧图像RGB三通道数据分别分配一Kernel函数,依据所述高清视频帧图像尺寸信息确定执行每个Kernel函数的线程数目,包括设置block尺寸和设置grid尺寸,所述block,是指GPU线程块单元,所述grid,是指GPU线程网单元。
优选的,所述block尺寸,可设置为256或512,所述grid尺寸依据所述图像尺寸信息和block尺寸设置。
优选的,可配置block为16×16二维线程块,grid尺寸根据下述公式确定:
其中,blockX为线程块X方向尺寸,blockY为线程块Y方向尺寸,gridX为线程网X方向尺寸,gridY为线程网Y方向尺寸,width为图像宽度,height为图像高度。
步骤104,数据变换。分别启动所述三个Kernel函数,从所述纹理内存A中分别读取所述原始高清视频帧图像RGB通道数据,数据类型由BYTE型转为double型,并将数据转换到对数域中,即S’ (i,j)=log S(i,j),将计算结果存入所述CUDA数组并与纹理内存B绑定,之后清空纹理内存A。
步骤105,起点和终点选取。分别启动所述三个Kernel函数,从所述纹理内存B中读取所述原始高清视频帧图像RGB各通道对数域数据,分别对其进行图像增强处理,将增强后的高清视频帧图像RGB各通道数据存入所述CUDA数组并与纹理内存C绑定,之后清空纹理内存B。
其中,所述步骤105还包括以下步骤:
步骤1051:将增强后的结果图像R(i,j)中的像素点的灰度值都初始化为constant,即R(i,j)=constant;
步骤1052:水平方向上,令h=width/2,计算S’(i,j)与S’(i+h,j)之间的相对明暗关系Relation(i,j),通过下述公式对R(i,j)进行修正;
步骤1053:垂直方向上,令l=height/2,计算S’(i,j)与S’(i,j+l)之间的相对明暗关系Relation(i,j),通过下述公式对R(i,j)进行修正;
步骤1054:令h=h/2,l=l/2,重复步骤4和步骤5,直到h=1且,l=1。
步骤106,线性拉伸。分别启动所述三个Kernel函数,分别从所述纹理内存C中读取所述增强后的高清视频帧图像RGB各通道数据进行线性拉伸,所述线性拉伸公式为下述公式,max和min分别表示最大灰度值和最小灰度值。
所述步骤106中,所述的线性拉伸方法还可用直方图截取的线性拉伸方法或者自适应的线性拉伸方法。
步骤107,彩色图像重写。将线性拉伸后的3幅图像L(i,j)按R、G、B顺序依次写入一个24位的彩色图像中。
步骤108,输出处理后图像。将计算结果传回CPU端,输出保存,之后清空纹理内存C。
步骤109,释放GPU显存。直至所有需要图像增强处理高清视频帧图像处理完成之后,释放GPU显存。
本发明实施例中基于GPU并行计算的高清视频图像增强方法,实现了高清视频图像的增强,利用CUDA技术,实现了算法的GPU并行加速,有效提高了处理效率。本发明实施例中图像增强算法的全部步骤均在GPU上实现,因此只需一次CPU端到GPU端及一次GPU端到CPU端的数据传递,避免数据频繁传递,从而有利于算法效率的提高。传至GPU端的数据大多存入纹理存储器,降低了数据的读取速度,进一步保证了算法的处理效率,实现了高清视频的实时要求,可在普通终端(普通电脑)上运行,有效地降低了成本。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (4)

1.一种基于GPU并行计算的高清视频图像增强方法,采用计算统一设备架构(CUDA)编程模型,其特征在于,包括以下步骤:
步骤1:根据高清视频帧序列依次读入原始高清视频帧图像S(i,j),获取原始高清视频帧图像RGB通道数据SR(i,j)、SG(i,j)和SB(i,j)及帧图像尺寸信息,所述帧图像尺寸信息包括帧图像的高度height和宽度width;
步骤2:GPU初始化,包括设置纹理及CUDA数组类型,为数据开辟GPU显存,将所述原始高清视频帧图像RGB通道数据赋值予CUDA数组并绑定纹理内存A;
步骤3:为所述原始高清视频帧图像RGB三通道数据分别分配一Kernel函数,依据所述高清视频帧图像尺寸信息确定执行每个Kernel函数的线程数目,包括设置block尺寸和设置grid尺寸,所述block,是指GPU线程块单元,所述grid,是指GPU线程网单元;
步骤4:分别启动所述三个Kernel函数,从所述纹理内存A中分别读取所述原始高清视频帧图像RGB通道数据,数据类型由BYTE型转为double型,并将数据转换到对数域中,即S’(i,j)=log S(i,j),将计算结果存入所述CUDA数组并与纹理内存B绑定,之后清空纹理内存A;
步骤5:分别启动所述三个Kernel函数,从所述纹理内存B中读取所述原始高清视频帧图像RGB各通道对数域数据,分别对其进行图像增强处理,将增强后的高清视频帧图像RGB各通道数据存入所述CUDA数组并与纹理内存C绑定,之后清空纹理内存B;
步骤6:分别启动所述三个Kernel函数,分别从所述纹理内存C中读取所述增强后的高清视频帧图像RGB各通道数据进行线性拉伸,将线性拉伸后的3幅图像L(i,j)按R、G、B顺序依次写入一个24位的彩色图像中,将计算结果传回CPU端,输出保存,之后清空纹理内存C,所述线性拉伸公式为下述公式,max和min分别表示最大灰度值和最小灰度值;
步骤7:直至所有需要图像增强处理高清视频帧图像处理完成之后,释放GPU显存;
其中,所述步骤5还包括以下步骤:
步骤51:将增强后的结果图像R(i,j)中的像素点的灰度值都初始化为constant,即R(i,j)=constant;
步骤52:水平方向上,令h=width/2,计算S’(i,j)与S’(i+h,j)之间的相对明暗关系Relation(i,j),通过下述公式对R(i,j)进行修正;
步骤53:垂直方向上,令l=height/2,计算S’(i,j)与S’(i,j+l)之间的相对明暗关系Relation(i,j),通过下述公式对R(i,j)进行修正;
步骤54:令h=h/2,l=l/2,重复步骤4和步骤5,直到h=1且,l=1。
2.如权利要求1所述的一种基于GPU并行计算的高清视频图像增强方法,其特征在于,所述步骤3中所述block尺寸,可设置为256或512,所述grid尺寸依据所述图像尺寸信息和block尺寸设置。
3.如权利要求1所述的一种基于GPU并行计算的高清视频图像增强方法,其特征在于,所述步骤3中可配置block为16×16二维线程块,grid尺寸根据下述公式确定:
其中,blockX为线程块X方向尺寸,blockY为线程块Y方向尺寸,gridX为线程网X方向尺寸,gridY为线程网Y方向尺寸,width为图像宽度,height为图像高度。
4.如权利要求1所述的一种基于GPU并行计算的高清视频图像增强方法,其特征在于,所述步骤5中所述的线性拉伸方法还可用直方图截取的线性拉伸方法或者自适应的线性拉伸方法。
CN201711415145.8A 2017-12-25 2017-12-25 一种基于gpu并行计算的高清视频图像增强方法 Pending CN109961404A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711415145.8A CN109961404A (zh) 2017-12-25 2017-12-25 一种基于gpu并行计算的高清视频图像增强方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711415145.8A CN109961404A (zh) 2017-12-25 2017-12-25 一种基于gpu并行计算的高清视频图像增强方法

Publications (1)

Publication Number Publication Date
CN109961404A true CN109961404A (zh) 2019-07-02

Family

ID=67020449

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711415145.8A Pending CN109961404A (zh) 2017-12-25 2017-12-25 一种基于gpu并行计算的高清视频图像增强方法

Country Status (1)

Country Link
CN (1) CN109961404A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110688223A (zh) * 2019-09-11 2020-01-14 深圳云天励飞技术有限公司 数据处理方法及相关产品
CN110930480A (zh) * 2019-11-30 2020-03-27 航天科技控股集团股份有限公司 液晶仪表的开机动画视频直接渲染方法
WO2021213336A1 (zh) * 2020-04-22 2021-10-28 华为技术有限公司 一种画质增强装置及相关方法
CN113706393A (zh) * 2020-05-20 2021-11-26 武汉Tcl集团工业研究院有限公司 视频增强方法、装置、设备及存储介质
CN114217976A (zh) * 2021-12-23 2022-03-22 北京百度网讯科技有限公司 任务处理方法、装置、设备及存储介质
CN114513675A (zh) * 2022-01-04 2022-05-17 桂林电子科技大学 一种全景视频直播系统构建方法
CN115942128A (zh) * 2022-12-12 2023-04-07 大连理工大学 一种基于异构平台的isp系统设计与实现方法
CN116260975A (zh) * 2023-01-17 2023-06-13 成都曾自科技有限公司 一种基于cuda的视频压缩方法、设备及存储介质
CN117156293A (zh) * 2023-01-19 2023-12-01 荣耀终端有限公司 拍照方法和相关装置
CN117830731A (zh) * 2024-01-02 2024-04-05 北京蓝耘科技股份有限公司 多维并行调度方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110688223B (zh) * 2019-09-11 2022-07-29 深圳云天励飞技术有限公司 数据处理方法及相关产品
CN110688223A (zh) * 2019-09-11 2020-01-14 深圳云天励飞技术有限公司 数据处理方法及相关产品
CN110930480B (zh) * 2019-11-30 2023-07-21 航天科技控股集团股份有限公司 液晶仪表的开机动画视频直接渲染方法
CN110930480A (zh) * 2019-11-30 2020-03-27 航天科技控股集团股份有限公司 液晶仪表的开机动画视频直接渲染方法
WO2021213336A1 (zh) * 2020-04-22 2021-10-28 华为技术有限公司 一种画质增强装置及相关方法
CN113706393A (zh) * 2020-05-20 2021-11-26 武汉Tcl集团工业研究院有限公司 视频增强方法、装置、设备及存储介质
CN114217976A (zh) * 2021-12-23 2022-03-22 北京百度网讯科技有限公司 任务处理方法、装置、设备及存储介质
CN114217976B (zh) * 2021-12-23 2023-02-28 北京百度网讯科技有限公司 任务处理方法、装置、设备及存储介质
CN114513675A (zh) * 2022-01-04 2022-05-17 桂林电子科技大学 一种全景视频直播系统构建方法
CN115942128A (zh) * 2022-12-12 2023-04-07 大连理工大学 一种基于异构平台的isp系统设计与实现方法
CN115942128B (zh) * 2022-12-12 2024-04-12 大连理工大学 一种基于异构平台的isp系统设计与实现方法
CN116260975A (zh) * 2023-01-17 2023-06-13 成都曾自科技有限公司 一种基于cuda的视频压缩方法、设备及存储介质
CN116260975B (zh) * 2023-01-17 2024-01-23 成都曾自科技有限公司 一种基于cuda的视频压缩方法、设备及存储介质
CN117156293A (zh) * 2023-01-19 2023-12-01 荣耀终端有限公司 拍照方法和相关装置
CN117156293B (zh) * 2023-01-19 2024-07-02 荣耀终端有限公司 拍照方法和相关装置
CN117830731A (zh) * 2024-01-02 2024-04-05 北京蓝耘科技股份有限公司 多维并行调度方法

Similar Documents

Publication Publication Date Title
CN109961404A (zh) 一种基于gpu并行计算的高清视频图像增强方法
US10861133B1 (en) Super-resolution video reconstruction method, device, apparatus and computer-readable storage medium
CN110544213B (zh) 一种基于全局和局部特征融合的图像去雾方法
CN105631417B (zh) 应用于互联网视频直播的视频美化系统及方法
US20210233210A1 (en) Method and system of real-time super-resolution image processing
US9041834B2 (en) Systems and methods for reducing noise in video streams
CN113034358B (zh) 一种超分辨率图像处理方法以及相关装置
US8311360B2 (en) Shadow remover
CN106897981A (zh) 一种基于引导滤波的低照度图像增强方法
CN109389569B (zh) 基于改进DehazeNet的监控视频实时去雾方法
US10609303B2 (en) Method and apparatus for rapid improvement of smog/low-light-level image using mapping table
US11689814B1 (en) System and a method for processing an image
WO2019056549A1 (zh) 图像增强方法以及图像处理装置
CN107993189B (zh) 一种基于局部分块的图像色调动态调节方法和装置
CN110428382A (zh) 一种用于移动终端的高效视频增强方法、装置和存储介质
US10943340B2 (en) Blending images
DE102020200310A1 (de) Verfahren und System zur Dunstreduzierung für die Bildverarbeitung
WO2019090580A1 (en) System and method for image dynamic range adjusting
CN103810681B (zh) 一种低功耗对比度增强方法
CN109985384A (zh) 贴图动态调整方法及装置
CN106933579A (zh) 基于cpu+fpga的图像快速去雾方法
CN110111347A (zh) 图像标志提取方法、装置及存储介质
CN106023118A (zh) 一种图像去雾方法及其在fpga上的实现方法
CN106210727B (zh) 基于神经网络处理器阵列的视频分级码流编码方法和系统
CN103208103A (zh) 一种基于gpu的低照度图像增强方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190702

WD01 Invention patent application deemed withdrawn after publication