CN113613071B - 一种图像处理方法、装置、计算机设备和存储介质 - Google Patents

一种图像处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN113613071B
CN113613071B CN202110875661.9A CN202110875661A CN113613071B CN 113613071 B CN113613071 B CN 113613071B CN 202110875661 A CN202110875661 A CN 202110875661A CN 113613071 B CN113613071 B CN 113613071B
Authority
CN
China
Prior art keywords
image
information
target
processed
marking
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
CN202110875661.9A
Other languages
English (en)
Other versions
CN113613071A (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.)
Shanghai Sensetime Lingang Intelligent Technology Co Ltd
Original Assignee
Shanghai Sensetime Lingang 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 Shanghai Sensetime Lingang Intelligent Technology Co Ltd filed Critical Shanghai Sensetime Lingang Intelligent Technology Co Ltd
Priority to CN202110875661.9A priority Critical patent/CN113613071B/zh
Publication of CN113613071A publication Critical patent/CN113613071A/zh
Priority to PCT/CN2022/088545 priority patent/WO2023005286A1/zh
Application granted granted Critical
Publication of CN113613071B publication Critical patent/CN113613071B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4007Interpolation-based scaling, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • 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/10024Color image

Abstract

本公开提供了一种图像处理方法、装置、计算机设备和存储介质,其中,该方法包括:获取待处理图像,以及待处理图像的前一帧图像对应的处理时长;对待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;在处理时长未超过第一预设时长的情况下,获取对待处理图像进行标记处理得到的第一对象标记信息,并将第一对象标记信息标记在第一目标图像上,得到第二目标图像;将第二目标图像转换为第三目标图像,并将第三目标图像发送到目标设备。

Description

一种图像处理方法、装置、计算机设备和存储介质
技术领域
本公开涉及图像处理技术领域,具体而言,涉及一种图像处理方法、装置、计算机设备和存储介质。
背景技术
为了保证图像处理过程的实时可视化,现有工具主要是基于乌班图ubuntu或者安卓android这样有广泛的开源基础的软实时操作系统,且需要借助图形处理器GPU等外部设备进行辅助,或者严重依赖X86-64指令集的高性能平台,极大提高了工具的成本。为了降低开发工具的成本,在ARM开发板的QNX平台下实现图像处理,但是由于ARM开发板算力不足,图像处理效率低,耗时长,无法满足图像处理的实时可视化要求。
发明内容
本公开实施例至少提供一种图像处理方法、装置、计算机设备和存储介质。
第一方面,本公开实施例提供了一种应用于ARM开发板,包括:
获取待处理图像,以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;
在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理得到的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;
将所述第二目标图像转换为第三目标图像,并将所述第三目标图像发送到目标设备。
本方面,利用ARM开发板能够并行处理数据的功能,例如ARM开发板中的单命令多数据并行处理库Neon以及CPU自带的寄存器,能够成倍提高图像格式转换的速度,满足了图像处理的实时性;另外,一般情况下,对图像进行标记处理的过程较慢,可能会导致处理时长过长,进而导致展示的视频流卡顿,即连续两帧图像展示卡顿,不能满足图像展示的流畅性要求。基于上述图像格式转换满足了图像处理的实时性的特点,要满足图像展示的流畅性要求,就需要保证处理时长不能超过第一预设时长,才能对待处理图像进行标记处理,进而该待处理图像与前一帧图像组成的视频流展示过程才不至于卡顿,才能满足第一对象标记信息的实时可视化要求。综上,利用ARM开发板能够并行处理数据的功能、基于处理时长判断是否为待处理图像进行标记处理的机制、以及存储在存储器中的第一对象标记信息,能够满足图像处理的实时可视化要求。
一种可选的实施方式中,所述将所述第二目标图像转换为第三目标图像,包括:
对所述第二目标图像进行第二格式转换,得到具有第二目标格式的第三目标图像;其中,所述第二目标格式为所述目标设备可显示的图像格式。
该实施方式,由于目标设备无法显示第一目标格式的第一目标图像,因此,需要将具有第一目标格式的第二目标图像进行第二格式转换,得到能够利用目标设备进行显示的第二目标格式的第三图像,其第二格式转换过程利用了ARM开发板能够并行处理数据的功能,能够提高第二目标图像转换为可展示的第三目标图像的速度。
一种可选的实施方式中,所述获取对所述待处理图像进行标记处理的第一对象标记信息,包括:
在获取到所述待处理图像中的对象的标记信息的情况下,将所述待处理图像中的对象的标记信息作为所述第一对象标记信息;
在未获取到所述待处理图像中的对象的标记信息的情况下,获取与所述待处理图像的拍摄时间差小于第二预设时长的历史图像中的对象的标记信息,并将所述历史图像中的对象的标记信息作为所述第一对象标记信息。
该实施方式,在获取到待处理图像中的对象的标记信息时,利用待处理图像中的对象的标记信息对待处理图像中的对象进行标记,在未能获取到待处理图像中的对象的标记信息的情况下,还可以利用历史图像中的对象的标记信息对待处理图像中的对象进行标记。由于与待处理图像的拍摄时间差小于第二预设时长的历史图像中的对象之间变化较小,因此,不会导致该历史图像中的对象的标记信息与待处理图像中的对象的标记信息差异较大的情况,即可以利用历史图像中的对象的标记信息对待处理图像中的对象进行标记。
一种可选的实施方式中,在对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像之后,还包括:
在所述处理时长超过所述第一预设时长的情况下,对所述第一目标图像进行第二格式转换,得到具有所述第二目标格式的第四目标图像;
将所述第四目标图发送到所述目标设备。
该实施方式,在处理时长超过第一预设时长的情况下,直接将第一目标图像进行第二格式转换,能够有效避免后续为第一目标图像标记后处理时长超出第一预设时长的情况,保证了图像处理的实时性。
一种可选的实施方式中,在所述获取待处理图像之后,还包括:
获取第一预设优先级和第二预设优先级;其中,所述第一预设优先级高于所述第二预设优先级;
按照所述第二预设优先级为对象识别处理进程分配第一资源,并利用所述第一资源通过所述对象识别处理进程对所述待处理图像进行对象识别,确定所述待处理图像中的对象的第一对象标记信息;
按照所述第一预设优先级,为图像处理进程分配第二资源,并利用所述第二资源通过所述图像处理进程对所述待处理图像进行第一格式转换、第二格式转换中的至少一项。
该实施方式,由于识别待处理图像中的对象,并生成第一对象标记信息的处理过程较慢,因此,通过对待处理图像的对象识别线程设置低优先级,即第二预设优先级,和对图像格式转换线程设置高优先级,即第一预设优先级的方式,能够保证图像格式转换并发送到目标设备展示的实时性要求。由于图像采集设备的采集频率较高,因此,前一帧图像和待处理图像较为相近,利用存储器中存储的前一帧图像对应的第一对象标记信息同样能够为当前帧待处理图像进行标记,不会影响用户所能察觉到的展示效果,因此,经过该实施方式处理能够满足图像处理的实时可视化要求。
一种可选的实施方式中,所述对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像,包括:
获取所述待处理图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待处理图像中每个像素点对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;
基于所述第一颜色编码信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一颜色编码信息的第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;
基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;
基于每个像素点对应的颜色编码子信息,得到具有所述第一目标格式的第一目标图像。
该实施方式,利用ARM开发板能够并行处理数据的功能,例如利用ARM开发板中的Neon扩展结构以及CPU自带的寄存器,能够从寄存器中存储的第一颜色编码信息中并行提取多个第一亮度信息和多组第一色彩信息,由于并行提取能够成倍提高信息获取速度,因此能够实现在CPU上成倍加速图像格式转换,能够满足实时性图像格式转换的需求。与现有技术相比,其不依赖于GPU等图像处理设备,能够降低图像格式转换的硬件成本;另外,本方面为实时图像格式转换提供了ARM开发板通用的图像格式转换方法,同时,与X86-64平台相比,ARM开发板的功耗和硬件成本较低。
一种可选的实施方式中,所述第二目标格式对应第二颜色编码信息;所述第二颜色编码信息中包括第二亮度信息和第二色彩信息;所述第三目标图像中每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息;
所述对所述第二目标图像进行第二格式转换,得到具有第二目标格式的第三目标图像,包括:
获取所述第二目标图像中每个像素点对应的第三颜色编码信息;
基于所述第三颜色编码信息,并行计算,得到所述第三目标图像中每个像素点对应的第二亮度信息;
基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述第三颜色编码信息,并行计算,得到所述第三目标图像中每个像素点对应的第二色彩信息;
基于所述第三目标图像中每个像素点对应的第二亮度信息和第二色彩信息,得到具有所述第二目标格式的第三目标图像。
该实施方式,基于ARM开发板中的寄存器存储的多个像素点对应的第三颜色编码信息,能够并行计算得到该多个像素点的第二亮度信息,基于ARM开发板中的寄存器存储的多个像素点对应的第三颜色编码信息,能够并行计算得到该多个像素点的第二色彩信息,相比较依次计算每个像素点的第二亮度信息和第二色彩信息,本实施方式能够成倍提高第二亮度信息和第二色彩信息的计算效率,进而提高图像格式转换的效率。
一种可选的实施方式中,所述第一对象标记信息包括对象的检测框信息、对象的身份标识符、所述对象的状态特征信息、所述对象的属性特征信息中的至少一种。
该实施方式,通过第一对象标记信息能够较为全面的检测到对象的多种信息,进而能够得到可视化的较为全面的对象信息,便于用户对对象的监管。
一种可选的实施方式中,所述待处理图像包括在车舱内拍摄的图像,所述对象包括驾驶员和/或乘客。
该实施方式,可实现对车舱内的环境图像进行处理,便于监管该环境的驾驶员和/或乘客的行为和/或状态。
第二方面,本公开实施例还提供一种检测方法,包括:
获取在车舱内拍摄的待处理图像;
以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;
在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理得到的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;
将所述第二目标图像转换为第三目标图像,并进行展示;
基于展示的第二目标图像,对车辆的驾驶进行安全预警。
第三方面,本公开实施例还提供一种图像处理装置,包括:
第一信息获取模块,用于获取待处理图像,以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
图像转换模块,用于对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;
图像标记模块,用于在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;
第一图像处理模块,用于将所述第二目标图像转换为第三目标图像,并将所述第三目标图像发送到目标设备。
一种可选的实施方式中,所述第一图像处理模块,用于对所述第二目标图像进行第二格式转换,得到具有第二目标格式的第三目标图像;其中,所述第二目标格式为所述目标设备可显示的图像格式。
一种可选的实施方式中,所述图像标记模块,用于在获取到所述待处理图像中的对象的标记信息的情况下,将所述待处理图像中的对象的标记信息作为所述第一对象标记信息;在未获取到所述待处理图像中的对象的标记信息的情况下,获取与所述待处理图像的拍摄时间差小于第二预设时长的历史图像中的对象的标记信息,并将所述历史图像中的对象的标记信息作为所述第一对象标记信息。
一种可选的实施方式中,所述第一图像处理模块,还用于在确定所述处理时长之后,在所述处理时长超过所述第一预设时长的情况下,对所述第一目标图像进行第二格式转换,得到具有所述第二目标格式的第四目标图像;将所述第四目标图发送到所述目标设备。
一种可选的实施方式中,所述装置还包括对象识别模块;
所述第一信息获取模块,还用于在获取待处理图像之后,获取第一预设优先级和第二预设优先级;
所述对象识别模块,用于按照所述第二预设优先级为对象识别处理进程分配第一资源,并利用所述第一资源通过所述对象识别处理进程对所述待处理图像进行对象识别,确定所述待处理图像中的对象的第一对象标记信息;
所述第二图像处理模块,用于按照所述第一预设优先级,为图像处理进程分配第二资源,并利用所述第二资源通过所述图像处理进程对所述待处理图像进行第一格式转换、第二格式转换中的至少一项。
一种可选的实施方式中,所述图像转换模块,用于获取所述待处理图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待处理图像中每个像素点对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;基于所述第一颜色编码信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一颜色编码信息的第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;基于每个像素点对应的颜色编码子信息,得到具有所述第一目标格式的第一目标图像。
一种可选的实施方式中,所述第二目标格式对应第二颜色编码信息;所述第二颜色编码信息中包括第二亮度信息和第二色彩信息;所述第三目标图像中每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息;
所述第一图像处理模块,用于获取所述第二目标图像中每个像素点对应的第三颜色编码信息;基于所述第三颜色编码信息,并行计算,得到所述第三目标图像中每个像素点对应的第二亮度信息;基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述第三颜色编码信息,并行计算,得到所述第三目标图像中每个像素点对应的第二色彩信息;基于所述第三目标图像中每个像素点对应的第二亮度信息和第二色彩信息,得到具有所述第二目标格式的第三目标图像。
一种可选的实施方式中,所述第一对象标记信息包括对象的检测框信息、对象的身份标识符、所述对象的状态特征信息、所述对象的属性特征信息中的至少一种。
一种可选的实施方式中,所述待处理图像包括在车舱内拍摄的图像,所述对象包括司机和/或乘客。
第四方面,本公开实施例还提供了一种检测装置,包括:
第二信息获取模块,用于获取在车舱内拍摄的待处理图像以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
第三图像处理模块,用于对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理得到的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;将所述第二目标图像转换为第三目标图像,并进行展示;
预警模块,用于基于展示的第三目标图像,对车辆的驾驶进行安全预警。
第五方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的图像处理方法的步骤,以及执行时执行上述第二方面的检测方法的步骤。
第六方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的图像处理方法的步骤,以及执行时执行上述第二方面的检测方法的步骤。
关于上述图像处理装置、计算机设备和存储介质的效果描述参见上述图像处理方法的说明,这里不再赘述。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种图像处理方法的流程图;
图2示出了本公开实施例所提供的图像处理过程的具体实施流程示意图;
图3示出了本公开实施例所提供的从第二目标图像中确定出的目标像素点的示意图;
图4示出了本公开实施例所提供的一种图像处理装置的示意图;
图5示出了本公开实施例所提供的一种检测装置的示意图;
图6示出了本公开实施例所提供的一种计算机设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
另外,本公开实施例中的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。
在本文中提及的“多个或者若干个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
经研究发现,为了保证图像处理过程的实时可视化,现有工具主要是基于ubuntu或者android这样有广泛的开源基础的软实时操作系统,且需要借助图形处理器GPU等外部设备进行辅助,或者严重依赖X86-64指令集的高性能平台,极大提高了工具的成本。为了降低开发工具的成本,在ARM开发板的QNX平台下实现图像处理,但是由于ARM开发板算力不足,图像处理效率低,耗时长,无法满足图像处理的实时可视化要求。
基于上述研究,本公开提供了一种图像处理方法、装置、计算机设备和存储介质,利用ARM开发板能够并行处理数据的功能,例如ARM开发板中的单命令多数据并行处理库Neon以及CPU自带的寄存器,能够成倍提高图像格式转换的速度,满足了图像处理的实时性;另外,一般情况下,对图像进行标记处理的过程较慢,可能会导致处理时长多长,进而导致展示的视频流卡顿,即连续两帧图像展示卡顿,不能满足图像展示的流畅性要求。基于上述图像格式转换满足了图像处理的实时性的特点,要满足图像展示的流畅性要求,就需要保证处理时长不能超过第一预设时长,才能对待处理图像进行标记处理,进而该待处理图像与前一帧图像组成的视频流展示过程才不至于卡顿,才能满足第一对象标记信息的实时可视化要求。综上,利用ARM开发板能够并行处理数据的功能、基于处理时长判断是否为待处理图像进行标记处理的机制、以及存储在存储器中的第一对象标记信息,能够满足图像处理的实时可视化要求。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
下面对本公开实施例中涉及到的特定名词进行介绍:
1、ARM处理器(Advanced RISC Machines,ARM),是一种低功耗成本的RISC微处理器。
2、ARM开发板,即以ARM的内核芯片作为CPU,同时附加其他外围功能的嵌入式开发板,用于评估内核芯片的功能和研发各类科技类企业的产品。
3、中央处理器(central processing unit,简称CPU)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
4、图形处理器(Graphics Processing Unit,GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。
5、精简指令集计算机(RISC:Reduced Instruction Set Computing,RISC)是一种执行较少类型计算机指令的微处理器。
6、OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效,由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
7、FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。
8、Neon是适用于ARM处理器的一种128位SIMD(Single Instruction,MultipleData,单指令、多数据)扩展结构。
9、YUV,是一种颜色编码方法,常使用在各个视频处理组件中。YUV在对照照片或视频编码时,考虑到人类的感知能力,允许降低色度的带宽。其中,Y表示明亮度,U和V表示色度。可以包括UYVU格式和NV12格式。
10、pack,一种用于管理添加信息的排序方法,只有上下左右的关系,每个添加信息按照添加顺序进行排列。
11、线性插值是指插值函数为一次多项式的插值方式,其在插值节点上的插值误差为零。
12、BGR,OpenCV默认的通道。其中B表示蓝色,G表示绿色,R表示红色。
13、QNX,一种商用的遵从POSIX规范的类Unix实时操作系统。是一种基于优先级抢占的硬实时操作系统。
14、码率,是数据传输时单位时间传送的数据位数,比如kbps即千位每秒。
15、H264,是一种数字视频压缩格式,
16、实时流传输协议,(Real Time Streaming Protocol,RTSP)是TCP/IP协议体系中的一个应用层协议,用来控制声音或影像的多媒体串流协议,并允许同时多个串流需求控制。
17、Ubuntu是一个以桌面应用为主的Linux操作系统。
18、android是一种基于Linux内核的自由及开放源代码的操作系统。
19、Linux是一种免费使用和自由传播的类UNIX操作系统。
20、X86-64,即英文词64-bit extended,64位拓展的简写,是X86架构的64位拓展。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种图像处理方法进行详细介绍,本公开实施例所提供的图像处理方法的执行主体一般为ARM开发板中的ARM处理器。这里的ARM开发板可以存储有经过QNX系统编译后的计算机可读指令。在一些可能的实现方式中,该图像处理方法可以通过ARM处理器调用存储器中存储的计算机可读指令的方式来实现。
下面以执行主体为ARM处理器为例对本公开实施例提供的图像处理方法加以说明。
参见图1所示,为本公开实施例提供的一种图像处理方法的流程图,所述方法包括步骤S101~S104,其中:
S101:获取待处理图像,以及待处理图像的前一帧图像对应的处理时长。
其中,待处理图像和前一帧图像可以为包括拍摄设备拍摄到的图像,比如车载摄像头拍摄到的车舱内的图像,该图像可以包括对象,该对象比如为司机和/或乘客等。前一帧图像可以为当前帧图像(即待处理图像)的上一帧图像。
这里,拍摄设备可以为任意有QNX平台驱动的摄像头。其中,摄像头的QNX驱动程序可替换,本公开实施例不进行具体限定。
本步骤中的处理时长可以为按照如下方式确定的:
方式一、在对前一帧图像进行标记处理的情况下,确定处理时长为对前一帧图像进行目标格式转换,并在目标格式转换过程中进行标记处理对应的时长。
方式二、在未对前一帧图像进行标记处理的情况下,确定处理时长为对前一帧图像进行目标格式转换对应的时长。
这里,在目标格式转换过程中进行标记处理,可以为是对第一目标格式的图像中的对象进行标记的处理,示例性的,第一目标格式的图像可以为UYVY格式的图像,可以对UYVY格式的图像中的人脸进行标记,具体可以生成针对人脸的检测框。
这里,目标格式转换可以包括第一格式转换和第二格式转换,其中,对图像进行第一格式转换可以得到具有第一目标格式的图像,对图像进行第二格式转换可以得到具有第二目标格式的图像。示例性的,第一目标格式可以为BGR格式,第二目标格式可以为NV12格式。具有第一目标格式的图像可以为BGR图像,具有第二目标格式的图像可以为NV12图像。
在一些实施例中,可以实时获取拍摄设备拍摄到的环境图像,即将该环境图像作为待处理图像。
在另一些实施例中,拍摄设备拍摄到的图像不一定包括对象,因此,可以对不包括对象的图像进行过滤处理,示例性的,获取车载摄像头拍摄到的车舱内的环境图像,识别环境图像中是否包含预设对象,比如人,在包含预设对象的情况下,将包含预设对象的环境图像作为待处理图像;在不包含预设对象的情况下,可以将该环境图像剔除,进行下一帧的处理。
示例性的,待处理图像的格式可以包括YUV格式中的UYVY格式或NV12格式等。该ARM处理器单独开辟了一条图像获取线程,实时获取摄像头采集到的UYVY格式或NV12格式的待处理图像,之后,将该待处理图像复制两份,分别存储到内存A和内存B中。
S102:对待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像。
这里,为了保证目标设备实时展示的视频流流畅,因此,在图像处理过程中,需要保证图像格式转换线程优先处理,即为该线程配置较高的优先级。
具体实施时,可以利用预先设置的高优先级的图像格式转换线程,对待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像。其中,第一目标格式可以为BGR格式,具有BGR格式的第一目标图像即为BGR图像。
示例性的,以利用车载摄像头拍摄到的UYVY格式的待处理图像为例,利用高优先级的图像格式转换线程获取内存A中存储的待处理图像,对待处理图像进行第一格式转换,将UYVY格式转换为BGR格式,得到具有BGR格式的BGR图像。
S103:在处理时长未超过第一预设时长的情况下,获取对待处理图像进行标记处理得到的第一对象标记信息,并将第一对象标记信息标记在第一目标图像上,得到第二目标图像。
其中,第一对象标记信息可以包括待处理图像中的对象的标记信息,或者包括,与待处理图像的拍摄时间差小于第二预设时长的历史图像中的对象的标记信息。
一般情况下,对图像进行标记处理的过程较慢,可能会导致处理时长过长,进而导致展示的视频流卡顿,即连续两帧图像展示卡顿,不能满足图像展示的流畅性要求。为了满足图像展示的流畅性要求,需要保证处理时长不能超过第一预设时长,才能对待处理图像进行标记处理,进而该待处理图像与前一帧图像组成的视频流展示过程才不至于卡顿,才能满足第一对象标记信息的实时可视化要求。
这里,由于识别待处理图像中的对象,并生成第一对象标记信息的处理过程较慢,因此,为了不影响图像处理的实时性,可以将预先设置的对象识别线程设置为低优先级。这里,低优先级比高优先级的优先级低,可调用的资源也相对较少。示例性的,在对象为驾驶员的情况下,对象识别线程可以包括人脸识别算法模块,即可以对驾驶员的人脸进行识别。
在一些实施例中,在存储器中存储有待处理图像中的对象的标记信息的情况下,可以从存储器中获取该待处理图像中的对象的标记信息,并将其作为第一对象标记信息,等待为待处理图像中的对象进行标记处理。
这里,将待处理图像中的对象的标记信息存入存储器的过程,具体的,获取内存B的待处理图像,将该待处理图像传输到对象识别线程,利用该对象识别线程中的对象识别算法,比如人脸识别算法,对待处理图像中的对象进行识别,得到对象的第一对象标记信息,并将该第一对象标记信息存储到存储器中,等待调用。
在一些实施例中,由于识别待处理图像中的对象,并生成该对象的标记信息的处理过程较慢,因此,在未获取到待处理图像中的对象的标记信息的情况下,还可以从存储器中获取与待处理图像的拍摄时间差小于第二预设时长的历史图像中的对象的标记信息,并将历史图像中的对象的标记信息作为第一对象标记信息。比如,前一帧图像中的对象的标记信息。
示例性的,由于识别对象过程较慢,经过高优先级进行第一格式转换后得到第一目标图像时,该待处理图像中的对象对应的标记信息可能还未生成,即存储器中还未存储有该对象对应的标记信息,则此时可以调用已经存储在存储器中的、与待处理图像的拍摄时间差小于第二预设时长的历史图像中的对象对应的标记信息。其中,与待处理图像的拍摄时间差小于第二预设时长的历史图像,可以包括当前帧待处理图像之前的三帧图像。这里,为了减少存储器存储标记信息的内存,可以仅保存最近三帧历史图像中对象对应的标记信息,降低内存,提高算法运行速度。需要说明的是,第二预设时长还可以根据具体应用场景进行设置,本公开实施例对此不进行限定。
该第一对象标记信息可以包括但不仅限于对象的检测框信息、对象的身份标识符、对象的状态特征信息、对象的属性特征信息中的至少一种。其中,检测框信息可以包括检测框中心点坐标,检测框的尺寸信息,即长度和宽度等。对象的身份标识符可以为指示对象身份信息的标识,比如司机标识或乘客标识等。对象的状态特征信息可以包括对象行为,比如玩手机、把握方向盘、为系安全带等。对象的属性特征信息可以包括年龄阶段属性,比如老人、成人、儿童等。
针对第一预设时长,示例性的,综合考虑多帧图像组成视频流后的播放流畅度,依据经验值,可以将第一预设时长设置为50ms。需要说明的是,该第一预设时长在不同的应用场景还可以根据经验值设置其他数值,本公开实施例不进行限定。
这里,第二目标图像为记录有第一对象标记信息的第一目标对象。
S104:将第二目标图像转换为第三目标图像,并将第三目标图像发送到目标设备。
这里,由于第二目标图像不可通过目标设备进行展示,因此,本步骤中,将第二目标图像转换为可在目标设备上展示的第三目标图像,具体的,可以将第二目标图像进行第二格式转换,得到第二目标格式的第三目标图像。其中,第二目标格式可以为NV12格式,第三目标图像可以为NV12格式的图像。这里,第三目标图像包含第一对象标记信息。
之后,可以将转换后的第三目标图像存储到内存C中。
目标设备包括显示屏,可展示第三目标图像。将第三目标图像发送到目标设备,具体的,通过预先设置的视频编码线程获取内存C中的第三目标图像,并对第三目标图像进行编码处理,例如,该视频编码线程调用QNX平台支持的视频编码接口和视频处理单元对第三目标图像进行编码处理,该视频处理单元配置有图像编码策略,码率。将第三目标图像编码成H264数据视频流格式,之后,将编码后的H264数据通过一种RTSP服务器发布到目标设备上进行展示。其中,该RTSP服务器是根据QNX特定的网络组件库构成的。
针对S101中的前一帧图像,对前一帧图像的处理过程可以包括对前一帧图像进行目标格式转换的过程,因此,处理时长可以为前一帧图像进行目标格式转换对应的时长。
在一些实施例中,在确定前一帧图像的上一帧图像的图像处理时长超过第一预设时长的情况下,则不对该前一帧图像进行标记处理,即前一帧图像的处理时长为前一帧图像进行目标格式转换对应的时长,且不包括在前一帧图像进行目标格式转换过程中进行标记处理的时长。基于此,对前一帧图像进行目标格式转换,具体实施时,可以先对前一帧图像进行第一格式转换,得到具有第一目标格式的第一格式图像;对第一格式图像进行第二格式转换,得到具有第二目标格式的第二格式图像。
示例性的,在第一目标格式为BGR格式的情况下,第一格式图像为BGR图像,在第二目标格式为NV12格式的情况下,第二格式图像为NV12图像。
在另一些实施例中,在确定前一帧图像的上一帧图像的图像处理时长不超过第一预设时长的情况下,则可以对该前一帧图像进行标记处理,即前一帧图像的处理时长为前一帧图像进行目标格式转换,并在目标格式转换过程中进行标记处理对应的时长。基于此,对前一帧图像进行目标格式转换,并在目标格式转换过程中进行标记处理,具体实施时,首先,可以对前一帧图像进行第一格式转换,得到具有第一目标格式的第一格式图像;之后,获取存储器中的第二对象标记信息,并将第二对象标记信息标记在第一格式图像上,得到第一格式标记图像,其中,第二对象标记信息可以包括前一帧图像或与前一帧的拍摄时间差小于第二预设时长的历史图像中的对象的标记信息;之后,再对第一格式标记图像进行第二格式转换,得到具有第二目标格式的第二格式图像。满足了对前一帧图像中的对象进行标记,得到第二对象标记信息并进行展示的实时可视化要求。
这里,对象的第二对象标记信息包括该对象的检测框信息、该对象的身份标识符、该对象的状态特征信息、该对象的属性特征信息中的至少一种。
在一些实施例中,处理时长超过第一预设时长的原因可以包括对前一帧图像中的对象进行标记处理,导致标记过程时长过长,进而造成处理时长超过第一预设时长,为了满足图像处理的实时性以及图像展示的流畅性要求,在处理时长超过第一预设时长的情况下,可以直接对第一目标图像进行第二格式转换,得到具有第二目标格式的第四目标图像;将第四目标图像发送到目标设备。
这里,在处理时长超过第一预设时长的情况下,可以直接将第一目标图像进行第二格式转换,避免了后续为第一目标图像标记后,处理时长超出第一预设时长的情况,保证了图像处理的实时性以及图像展示的流畅性要求。
示例性的,第四目标图像可以为NV12格式的图像。
将第四目标图像发送到目标设备,并利用目标设备展示第四目标图像的详细描述可以参照上述将第三目标图像发送到目标设备的过程,在此不再赘述。
这里,针对连续两帧图像,其中有一帧缺少第一对象标记信息,不会影响用户所能察觉到的展示效果,仍然能够满足图像处理的实时可视化要求。
针对S102和S103,由于识别待处理图像中的对象,并生成第一对象标记信息的处理过程较慢,因此,通过对待处理图像进行对象识别的线程设置低优先级,即第二预设优先级,和对图像格式转换线程设置高优先级,即第一预设优先级的方式,能够保证图像格式转换并发送到目标设备展示的实时性要求。
针对图像格式转换线程,具体实施时,首先,获取第一预设优先级;之后,按照第一预设优先级,为图像处理线程分配第二资源,并利用第二资源通过图像处理线程对待处理图像进行第一格式转换和/或第二格式转换。此外,可选地,在优先完成第一格式转换和第二格式转换的情况下,图像处理线程也可以执行待处理图像的标记处理。
这里,图像处理,即为利用第二资源对待处理图像进行第一格式转换、第二格式转换和标记处理等中的至少一项。其中,针对图像处理中的标记处理,还可以基于处理时长判断是否为待处理图像进行标记处理。
针对对象识别线程,具体实施时,获取第二预设优先级,按照第二预设优先级为对象识别处理分配第一资源,并利用第一资源对待处理图像进行对象识别,确定待处理图像中的对象的第一对象标记信息。在这里,资源是指系统资源,例如系统的内存、CPU等。
这里,第一预设优先级高于第二预设优先级,第一预设优先级,即为上述的高优先级,第二预设优先级可以为上述的低优先级。第一资源的资源量少于第二资源的资源量。
这里,对待处理图像进行对象识别,确定待处理图像中的对象的第一对象标记信息的过程,可以参照上述确定第一对象标记信息的详细说明,重复之处在此不再赘述。
上述,由于图像采集设备的采集频率较高,因此,前一帧图像和待处理图像较为相近,利用存储器中存储的前一帧图像对应的第一对象标记信息同样能够为当前帧待处理图像进行标记,不会影响用户所能察觉到的展示效果,因此,经过该实施方式处理能够满足图像处理的实时可视化要求。
针上述S101~S104,参见图2所示,其为图像处理过程的具体实施流程示意图。包括21表示拍摄设备获取到的待处理图像,22表示图像格式转换线程,23表示对象识别线程,24表示存储器存储的第一对象标记信息,25表示判断是否允许对第一目标图像进行标记,其中,允许的情况可以包括处理时长未超过第一预设时长的情况,不允许的情况可以包括处理时长超过第一预设时长的情况。26表示允许对第一目标图像进行标记,得到第二目标图像,27表示对包含标记的第二目标图像进行第二格式转换,将转换后的图像存入内存C。28表示不允许对第一目标图像进行标记,直接对第一目标图像进行第二格式转换,将转换后的图像存入内存C。29表示内存C。
针对上述对待处理图像进行第一格式转换,具体实施时,可以参见下述S1021~S1024:
S1021:获取待处理图像的第一颜色编码信息;第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,待处理图像中每个像素点对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息。
本步骤中,第一颜色编码信息可以包括UYVY格式对待处理图像进行编码的编码信息,其中,UYVY格式为YUV格式中的其中一种水平取样,垂直完全采样格式。或者,还可以为以NV12格式对待处理图像进行编码的编码信息,其中,NV12格式为YUV格式中的其中一种水平取样,垂直2:1采样格式。或者,还可以为以AYUV格式对待处理图像进行编码的编码信息,其中,AYUV格式为YUV格式中的其中一种完全取样格式。
示例性的,以待处理图像为UYVY格式图像为例,第一颜色编码信息中包括多个第一亮度信息,即多个Y;以及,多组第一色彩信息,即多组UV。待处理图像的每个像素点对应一个Y,每两个第一亮度信息对应一组第一色彩信息。
在一些实施例中,还获取待处理图像的图像尺寸,包括待处理图像的宽度和高度。
S1022:基于第一颜色编码信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于第一颜色编码信息的第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列。
本步骤中,第一颜色编码信息的第一排序顺序可以为pack排序顺序,即按照添加顺序进行排列。
例如,UYVY格式按照添加顺序进行排列,得到第一颜色编码信息的第一排序顺序为UYVYUYVY……。其中,Y、U、V即为像素点的元素。另外,可以基于上述获取到的待处理图像的图像尺寸,确定第一排序顺序UYVYUYVY……中每个元素的地址,按照地址并行提取对应位置的元素。
这里,第一亮度信息在第一颜色编码信息中的排列方式符合一定的排序特征,比如位于奇数位或者偶数位。延续上例,UYVYUYVY……的排序位置依次为第0位,第1位,第2位,第3位,第4位,第5位,第6位,第7位,……。在UYVYUYVY……中第一亮度信息Y位于奇数位,第一色彩信息U和V位于偶数位。
具体实施时,在确定了第一颜色编码信息的第一排序顺序之后,可以确定待处理图像的首个元素地址。基于ARM中寄存器的存储容量,确定ARM开发板的并行处理性能信息;基于第一颜色编码信息的第一排序顺序和并行处理性能信息,从首个元素地址开始,可以利用Neon依次并行提取第一排序顺序中的多个第一亮度信息,得到第一信息序列;以及基于第一颜色编码信息的第一排序顺序和并行处理性能信息,从首个元素地址开始,可以利用Neon依次并行提取第一排序顺序中的多组第一色彩信息,得到第二信息序列。
这里,由于每个元素占8bit,在图像格式转换过程中元素计算附带有8bit的符号(包括正“+”、负“-”等),因此,每个元素需要占16bit内存。ARM中寄存器的存储容量可以为128bit,其并行处理性能信息可以包括一次并行提取不带符号的16个元素,或者,是带符号的8个元素。
示例性的,以待处理图像为UYVY格式的图像为例,第一排序顺序为UYVYUYVY……,对应地址可以为0、1、2、3、4、5、6、7、……,可以确定出第一亮度信息在第一颜色编码信息中的排序位置为奇数位,即1、3、5、7、……,可以确定出第一色彩信息在第一颜色编码信息中的排序位置为偶数位,即0、2、4、6、……,之后,从首个元素地址开始,可以利用Neon每次并行提取奇数位的8个第一亮度信息,即地址1、3、5、7、9、11、13、15对应的Y,之后,循环执行提取过程,不断获取第一亮度信息,再基于得到的多个第一亮度信息,确定第一信息序列为YYYYYYYY……;可以利用Neon每次并行提取偶数位的4组第一色彩信息,分别为4个第一色彩子信息U和4个第二色彩子信息V,即地址0、4、8、12对应的U和地址2、6、10、14对应的V,之后,循环执行提取过程,不断获取第一色彩信息,再基于得到的多组第一色彩信息,确定得到第二信息序列为UVUVUVVV……。
上述分别并列提取出多个第一亮度信息和多组第一色彩信息,能够快速得到待处理图像中的多个像素点对应的第一信息序列和第二信息序列,进而提高待处理图像中的多个像素点的图像格式转换的效率。
S1023:基于一组第一色彩信息对应的第一亮度信息的第一数量、第二信息序列和第一信息序列,确定每个像素点对应的颜色编码子信息。
本步骤中,一组第一色彩信息对应的第一亮度信息的第一数量可以表示第一亮度信息共享一组第一色彩信息的数量。例如,针对UYVY格式,一组第一色彩信息对应两个第一亮度信息,即两个第一亮度信息共享一组第一色彩信息;针对NV12格式,一组第一色彩信息对应四个第一亮度信息,即四个第一亮度信息共享一组第一色彩信息;针对AYUV格式,一组第一色彩信息对应一个第一亮度信息,即一个第一亮度信息共享一组第一色彩信息。
这里,第一色彩信息可以包括第一色彩子信息和第二色彩子信息,具体的,比如第一色彩信息为UV,则第一色彩子信息可以为U,第二色彩子信息可以为V。每个像素点对应的颜色编码子信息包括第一亮度信息Y、第一色彩子信息可以为U和第二色彩子信息可以为V。
示例性的,针对UYVY格式的待处理图像,可以确定一组第一色彩信息UV对应两个第一亮度信息Y,即第一数量为2。在第一信息序列为YYYY,第二信息序列为UVUV的情况下,第一信息序列对应的第一个第一亮度信息Y,对应第一组第一色彩信息UV;第一信息序列对应的第二个第一亮度信息Y,对应第一组第一色彩信息UV;第一信息序列对应的第三个第一亮度信息Y,对应第二组第一色彩信息UV;第一信息序列对应的第四个第一亮度信息Y,对应第二组第一色彩信息UV。进而,可以确定待处理图像中的第一个像素点对应的颜色编码子信息为第一个第一亮度信息Y和第一组第一色彩信息UV;可以确定待处理图像中的第二个像素点对应的颜色编码子信息为第二个第一亮度信息Y和第一组第一色彩信息UV;可以确定待处理图像中的第三个像素点对应的颜色编码子信息为第三个第一亮度信息Y和第二组第一色彩信息UV;可以确定待处理图像中的第四个像素点对应的颜色编码子信息为第四个第一亮度信息Y和第二组第一色彩信息UV。同理,按照上述过程,循环利用Neon并列提取的其他多个第一亮度信息和其他多组第一色彩信息,可以确定出待处理图像中的每个像素点的颜色编码子信息。
S1024:基于每个像素点对应的颜色编码子信息,得到具有第一目标格式的第一目标图像。
本步骤中,第一目标格式可以包括但不仅限于BGR格式。在确定待处理图像为UYVY格式的图像的情况下,第一目标格式的第一目标图像则可以为BGR格式的图像。
具体实施时,首先,可以基于每个像素点对应的颜色编码子信息,分别确定每个像素点对应于第一目标格式的第三颜色编码信息;之后,基于每个像素点对应的第三颜色编码信息,得到具有第一目标格式的第一目标图像。
这里,可以利用线性插值函数计算出待处理图像中的每个像素点对应的第一目标格式的第三颜色编码信息。
这里,在第一目标格式为BGR格式的情况下,第三颜色编码信息可以包括元素B,元素G元素R。
示例性的,以将UYVY格式的待处理图像转换为BGR格式的第一目标图像为例,针对一个像素点对应的颜色编码子信息,即Y1、U1、V1,利用线性插值函数f(Y,U,V),确定该像素点的对应的BGR格式的第三颜色编码信息,记为B=αf(Y1,U1,V1),G=βf(Y1,U1,V1),R=γf(Y1,U1,V1),其中,α表示计算该像素中的B元素对应的在线性插值函数中的固定系数;β表示计算该像素中的G元素对应的在线性插值函数中的固定系数;γ表示计算该像素中的R元素对应的在线性插值函数中的固定系数。上述α、β、γ可以按照实际应用场景和经验值进行设定,本公开实施例不进行具体限定。在确定了该像素点的第二颜色编码信息B、G、R之后,确定该像素点从UYVY格式转换为BGR格式。同理,针对待处理图像中的每个像素点,按照上述像素点的格式转换方式,最终得到具有第一目标格式的第一目标图像,即BGR格式的BGR图像。
另外,在计算出每个像素点的BGR元素之后,可以按照每个像素点的先后顺序,从BGR图像中首个元素的地址开始,将每个像素点对应的元素存入内存D中。
上述S1021~S1024,利用了ARM开发板中的Neon扩展结构以及CPU自带的寄存器,能够从寄存器中存储的第一颜色编码信息中并行提取多个第一亮度信息和多组第一色彩信息,由于并行提取能够成倍提高信息获取速度,因此能够实现在CPU上成倍加速图像格式转换,能够满足实时性图像格式转换的需求。
针对上述对第二目标图像进行第二格式转换,得到具有第二目标格式的第三目标图像。其中,第二目标格式对应第二颜色编码信息;第二颜色编码信息中包括第二亮度信息和第二色彩信息;第三目标图像中每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息。
示例性的,第二目标格式可以包括但不仅限于NV12格式,第二颜色编码信息中包括第二亮度信息Y,第二色彩信息UV。NV12格式图像的每个像素点对应一个第二亮度信息,四个第二亮度信息对应一组第二色彩信息。
将第二目标图像转换为第二目标格式的第三目标图像,具体实施时,可以参见下述S301~304:
S301:获取第二目标图像中每个像素点对应的第三颜色编码信息。
这里,由于在进行第二格式转换过程中,不涉及第二目标图像中包含的第一对象标记信息,因此,第二目标图像中每个像素点对应的第三颜色编码信息,即为第一目标图像中每个像素点对应的第三颜色编码信息。
S302:基于第三颜色编码信息,并行计算,得到第三目标图像中每个像素点对应的第二亮度信息。
具体实施时,可以基于上述确定的每个像素点对应于BGR格式的第三颜色编码信息,即B=αf(Y,U,V),G=βf(Y,U,V),R=γf(Y,U,V),利用线性插值函数进行并行计算,得到第二目标图像的每个像素点对应的第二亮度信息,即Y=δf(B,G,R),其中,δ表示计算该像素中的第二亮度信息Y对应的在线性插值函数中的固定系数,可以根据经验值定义,本公开实施例不进行具体限定。
这里,并行计算可以为利用Neon从三个寄存器分别并行提取存储的8个8bit的第三颜色编码信息中的元素B,8个8bit的第三颜色编码信息中的元素G,8个8bit的第三颜色编码信息中的元素R,得到8组第三颜色编码信息BGR,即8个像素点,之后,利用线性插值函数Y=δf(B,G,R)并行计算8组BGR,得到其中每组BGR(每个像素点)对应的第二亮度信息。循环调用Neon并行计算,直到得到第二目标图像对应的每个像素点格式转换后的第二亮度信息,即可得到第三目标图像中每个像素点对应的第二亮度信息。
S303:基于一组第二色彩信息对应的第二亮度信息的第二数量和第三颜色编码信息,并行计算,得到第三目标图像中每个像素点对应的第二色彩信息。
本步骤中,一组第二色彩信息对应的第二亮度信息的第二数量可以表示第二亮度信息共享一组第二色彩信息的数量。示例性的,在第二目标格式为NV12格式的情况下,第二数量为4。
具体实施时,基于一组第二色彩信息对应的第二亮度信息的第二数量,确定目标像素点的排序特征信息;目标像素点包括用于确定第二色彩信息的像素点;基于排序特征信息和第二目标图像中每个像素点对应的第三颜色编码信息,确定目标像素点对应的第三颜色编码信息;基于目标像素点对应的第三颜色编码信息,并行计算,得到第三目标图像的每个像素点对应的第二色彩信息。
这里,由于第二数量不同,则确定的目标像素点的个数不同。例如,在第二数量为4的情况下,即四个第二亮度信息共享一组第二色彩信息,则第二目标图像中的四个像素点,确定一个目标像素点,即目标像素点的个数为第二目标图像中像素点个数的四分之一。具体的可以参见图3所示,其为从第二目标图像中确定出的目标像素点的示意图。其中,31表示4×4的第二目标图像;32表示第二目标图像中的像素点,共有16个像素点;33表示目标像素点,共有4个,即为16个第二目标图像中的像素点的数量的四分之一。
在第二数量为4的情况下,目标像素点的排序特征信息为偶数行、偶数列第二目标图像中的像素点的位置信息,如图3中的,第0行、第0列,第0行、第2列,第2行、第0列,第2行、第2列。
这里,并行计算可以是利用Neon从三个寄存器分别并行提取存储的排序特征信息对应的行、列所在位置处的元素B、元素G和元素R,确定至少一组第三颜色编码信息BGR,即至少一个像素点,之后,利用线性插值函数U=εf(B,G,R),V=θf(B,G,R),并行计算提取到的BGR,得到每组BGR(每个像素点)对应的第二色彩信息U和V。其中,ε表示计算该像素中的第二色彩信息U对应的在线性插值函数中的固定系数,θ表示计算该像素中的第二色彩信息V对应的在线性插值函数中的固定系数,可以根据经验值定义,本公开实施例不进行具体限定。之后,循环调用Neon并行计算,直到得到第二目标图像对应的每个像素点格式转换后的第二色彩信息,即可得到第三目标图像中每个像素点对应的第二色彩信息。
S304:基于第三目标图像中每个像素点对应的第二亮度信息和第二色彩信息,得到具有第二目标格式的第三目标图像。
具体的,基于第三目标图像的每个像素点对应的第二亮度信息和第二色彩信息,确定每个像素点对应的第二颜色编码信息;基于第二颜色编码信息,得到具有第二目标格式的第三目标图像。
这里,一个像素点对应一个第二亮度信息,根据一组第二色彩信息对应的第二亮度信息的第二数量,确定第二数量像素点共享一组第二色彩信息。
示例性的,在第二子格式为NV12格式的情况下,确定4×4的第三目标图像的每个像素点对应的第二亮度信息和第二色彩信息,即YYYYYYYYYYYYYYYY和UVUVUVUV,则每个像素点对应的第二颜色编码信息可以为YYYYYYYYYYYYYYYY UVUVUVUV,即得到NV12格式的第三目标图像为YYYYYYYYYYYYYYYY UVUVUVUV。
在计算出每个像素点的第二亮度信息和第二色彩信息之后,将生成的第三目标图像中的第一个第二亮度信息存入预先设置的第二亮度信息首地址中,并按照顺序依次存储其余的第二亮度信息;将生成的第三目标图像中的第一组第二色彩信息存入预先设置的第二色彩信息首地址,并按照顺序依次存储其余的第二色彩信息,以使后续基于第二亮度信息首地址和第二色彩信息首地址从内存中调用第三目标图像。
上述S301~S304,基于ARM开发板中的寄存器存储的多个像素点对应的第三颜色编码信息,能够并行计算得到该多个像素点的第二亮度信息,基于ARM开发板中的寄存器存储的多个像素点对应的第三颜色编码信息,能够并行计算得到该多个像素点的第二色彩信息,相比较依次计算每个像素点的第二亮度信息和第二色彩信息,本实施方式能够成倍提高第二亮度信息和第二色彩信息的计算效率,进而提高图像格式转换的效率。
在一些实施例中,针对S303,基于一组第二色彩信息对应的第二亮度信息的第二数量,确定寄存器的第三数量;利用第三数量的寄存器存储第三颜色编码信息,并基于寄存器存储第三颜色编码信息进行并行计算,得到第三目标图像的每个像素点对应的第二色彩信息。
示例性的,针对BGR格式图像转换为NV12格式图像,四个第二亮度信息共享一组第二色彩信息,在并行计算第二色彩信息时,利用Neon并行计算提取第三颜色编码信息BGR时,一次仅能提取出4组BGR,即偶数行、偶数列,或者,奇数行、奇数列的BGR,利用Neon并行计算最多能同时处理8组BGR,如果仅利用并行提取出的4组BGR将浪费Neon算力,因此,可以同时调用两个寄存器(即第三数量为2)存储的第三颜色编码信息,同时提取8组BGR,利用线性插值函数,能够同时并行计算出16个像素点对应的第二色彩信息,提高了第二色彩信息的计算效率,进而提高了BGR格式图像转换为NV12格式图像的图像转换效率。
另外,本公开实施例还提供了一种检测方法,其执行主体为可显示设备,比如上述的目标设备。其应用场景可以为车辆驾驶场景,对司机和乘客进行监管。
该可显示设备通过RTSP协议获取到在车舱内拍摄的待处理图像,利用上述图像处理方法对待处理图像进行处理,并展示处理后得到的第三目标图像。基于展示的第三目标图像,对车辆的驾驶进行安全预警。例如,第三目标图像包括第一对象标记信息,基于展示的第一对象标记信息确定司机和/或乘客的状态特征信息,并判断是否需要安全预警,比如,当司机的状态特征信息指示司机有玩手机和不系安全带的问题,则及时向司机发送安全预警提示信息。例如,在第一对象标记信息指示对象的属性特征信息为儿童、且该儿童没有坐在安全椅上的情况下,则及时向乘客发送安全预警提示信息。具体示例在此不再一一列举。
基于上述实施例,利用ARM开发板能够并行处理数据的功能,例如ARM开发板中的单命令多数据并行处理库Neon以及CPU自带的寄存器,能够成倍提高图像格式转换的速度,满足了图像处理的实时性;另外,一般情况下,对图像进行标记处理的过程较慢,可能会导致处理时长多长,进而导致展示的视频流卡顿,即连续两帧图像展示卡顿,不能满足图像展示的流畅性要求。基于上述图像格式转换满足了图像处理的实时性的特点,要满足图像展示的流畅性要求,就需要保证处理时长不能超过第一预设时长,才能对待处理图像进行标记处理,进而该待处理图像与前一帧图像组成的视频流展示过程才不至于卡顿,才能满足第一对象标记信息的实时可视化要求。综上,利用ARM开发板能够并行处理数据的功能、基于处理时长判断是否为待处理图像进行标记处理的机制、以及存储在存储器中的第一对象标记信息,能够满足图像处理的实时可视化要求。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与图像处理方法对应的图像处理装置,由于本公开实施例中的图像处理装置解决问题的原理与本公开实施例上述图像处理方法相似,因此装图像处理置的实施可以参见图像处理方法的实施,重复之处不再赘述。
参照图4所示,为本公开实施例提供的一种图像处理装置的示意图,所述装置包括:第一信息获取模块401、图像转换模块402、图像标记模块403和第一图像处理模块404;其中,
第一信息获取模块401,用于获取待处理图像,以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
图像转换模块402,用于对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;
图像标记模块403,用于在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理得到的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;
第一图像处理模块404,用于将所述第二目标图像转换为第三目标图像,并将所述第三目标图像发送到目标设备。
一种可选的实施方式中,所述第一图像处理模块404,用于对所述第二目标图像进行第二格式转换,得到具有第二目标格式的第三目标图像;其中,所述第二目标格式为所述目标设备可显示的图像格式。
一种可选的实施方式中,所述图像标记模块403,用于在获取到所述待处理图像中的对象的标记信息的情况下,将所述待处理图像中的对象的标记信息作为所述第一对象标记信息;在未获取到所述待处理图像中的对象的标记信息的情况下,获取与所述待处理图像的拍摄时间差小于第二预设时长的历史图像中的对象的标记信息,并将所述历史图像中的对象的标记信息作为所述第一对象标记信息。
一种可选的实施方式中,所述第一图像处理模块404,还用于在确定所述处理时长之后,在所述处理时长超过所述第一预设时长的情况下,对所述第一目标图像进行第二格式转换,得到具有所述第二目标格式的第四目标图像;将所述第四目标图发送到所述目标设备。
一种可选的实施方式中,所述装置还包括对象识别模块405和第二图像处理模块406;
所述第一信息获取模块401,还用于在获取待处理图像之后,获取第一预设优先级和第二预设优先级;
所述对象识别模块405,用于按照所述第二预设优先级为对象识别处理进程分配第一资源,并利用所述第一资源通过所述对象识别处理进程对所述待处理图像进行对象识别,确定所述待处理图像中的对象的第一对象标记信息;
所述第二图像处理模块406,用于按照所述第一预设优先级,为图像处理进程分配第二资源,并利用所述第二资源通过所述图像处理进程对所述待处理图像进行第一格式转换和第二格式转换中的至少一项。
一种可选的实施方式中,所述图像转换模块402,用于获取所述待处理图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待处理图像中每个像素点对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;基于所述第一颜色编码信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一颜色编码信息的第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;基于每个像素点对应的颜色编码子信息,得到具有所述第一目标格式的第一目标图像。
一种可选的实施方式中,所述第二目标格式对应第二颜色编码信息;所述第二颜色编码信息中包括第二亮度信息和第二色彩信息;所述第三目标图像中每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息;
所述第一图像处理模块404,用于获取所述第二目标图像中每个像素点对应的第三颜色编码信息;基于所述第三颜色编码信息,并行计算,得到所述第三目标图像中每个像素点对应的第二亮度信息;基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述第三颜色编码信息,并行计算,得到所述第三目标图像中每个像素点对应的第二色彩信息;基于所述第三目标图像中每个像素点对应的第二亮度信息和第二色彩信息,得到具有所述第二目标格式的第三目标图像。
一种可选的实施方式中,所述第一对象标记信息包括对象的检测框信息、对象的身份标识符、所述对象的状态特征信息、所述对象的属性特征信息中的至少一种。
一种可选的实施方式中,所述待处理图像包括在车舱内拍摄的图像,所述对象包括司机和/或乘客。
关于图像处理装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述图像处理方法实施例中的相关说明,这里不再详述。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与检测方法对应的检测装置,由于本公开实施例中的检测装置解决问题的原理与本公开实施例上述检测方法相似,因此检测装置的实施可以参见检测方法的实施,重复之处不再赘述。
参照图5所示,为本公开实施例提供的一种检测装置的示意图,该检测装置包括:第二信息获取模块501、第三图像处理模块502和预警模块503;其中,
第二信息获取模块501,用于获取在车舱内拍摄的待处理图像以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
第三图像处理模块502,用于对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理得到的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;将所述第二目标图像转换为第三目标图像,并进行展示;
预警模块503,用于基于展示的第三目标图像,对车辆的驾驶进行安全预警。
关于检测装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述检测方法实施例中的相关说明,这里不再详述。
基于同一技术构思,本申请实施例还提供了一种计算机设备。参照图6所示,为本申请实施例提供的计算机设备的结构示意图,包括:
处理器61、存储器62和总线63。其中,存储器62存储有处理器61可执行的机器可读指令,处理器61用于执行存储器62中存储的机器可读指令,所述机器可读指令被处理器61执行时,处理器61执行下述步骤:S101:获取待处理图像,以及待处理图像的前一帧图像对应的处理时长;S102:对待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;S103:在处理时长未超过第一预设时长的情况下,获取对待处理图像进行标记处理得到的第一对象标记信息,并将第一对象标记信息标记在第一目标图像上,得到第二目标图像;S104:将第二目标图像转换为第三目标图像,并将第三目标图像发送到目标设备。
上述存储器62包括内存621和外部存储器622;这里的内存621也称内存储器,用于暂时存放处理器61中的运算数据,以及与硬盘等外部存储器622交换的数据,处理器61通过内存621与外部存储器622进行数据交换,当计算机设备运行时,处理器61与存储器62之间通过总线63通信,使得处理器61在执行上述方法实施例中所提及的执行指令。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的图像处理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现上述的图像处理方法的步骤。其中,计算机程序产品可以是任何能实现上述图像处理方法的产品,该计算机程序产品中对现有技术做出贡献的部分或全部方案可以以软件产品(例如软件开发包(Software Development Kit,SDK))的形式体现,该软件产品可以被存储在一个存储介质中,通过包含的计算机指令使得相关设备或处理器执行上述图像处理方法的部分或全部步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

Claims (14)

1.一种图像处理方法,其特征在于,应用于ARM开发板,包括:
获取待处理图像,以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换、并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;
在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理得到的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;对所述待处理图像进行第一格式转换以及对所述待处理图像进行标记处理为同步执行的;
将所述第二目标图像转换为第三目标图像,并将所述第三目标图像发送到目标设备。
2.根据权利要求1所述的图像处理方法,其特征在于,所述将所述第二目标图像转换为第三目标图像,包括:
对所述第二目标图像进行第二格式转换,得到具有第二目标格式的第三目标图像;其中,所述第二目标格式为所述目标设备可显示的图像格式。
3.根据权利要求1或2所述的图像处理方法,其特征在于,所述获取对所述待处理图像进行标记处理的第一对象标记信息,包括:
在获取到所述待处理图像中的对象的标记信息的情况下,将所述待处理图像中的对象的标记信息作为所述第一对象标记信息;
在未获取到所述待处理图像中的对象的标记信息的情况下,获取与所述待处理图像的拍摄时间差小于第二预设时长的历史图像中的对象的标记信息,并将所述历史图像中的对象的标记信息作为所述第一对象标记信息。
4.根据权利要求1所述的图像处理方法,其特征在于,在对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像之后,还包括:
在所述处理时长超过所述第一预设时长的情况下,对所述第一目标图像进行第二格式转换,得到具有所述第二目标格式的第四目标图像;
将所述第四目标图像发送到所述目标设备。
5.根据权利要求1所述的图像处理方法,其特征在于,在所述获取待处理图像之后,还包括:
获取第一预设优先级和第二预设优先级;其中,所述第一预设优先级高于所述第二预设优先级;
按照所述第二预设优先级为对象识别处理进程分配第一资源,并利用所述第一资源通过所述对象识别处理进程对所述待处理图像进行对象识别,确定所述待处理图像中的对象的第一对象标记信息;
按照所述第一预设优先级,为图像处理进程分配第二资源,并利用所述第二资源通过所述图像处理进程对所述待处理图像进行第一格式转换和第二格式转换中的至少一项。
6.根据权利要求1所述的图像处理方法,其特征在于,所述对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像,包括:
获取所述待处理图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待处理图像中每个像素点对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;
基于所述第一颜色编码信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一颜色编码信息的第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;
基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;
基于每个像素点对应的颜色编码子信息,得到具有所述第一目标格式的第一目标图像。
7.根据权利要求2所述的图像处理方法,其特征在于,所述第二目标格式对应第二颜色编码信息;所述第二颜色编码信息中包括第二亮度信息和第二色彩信息;所述第三目标图像中每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息;
所述对所述第二目标图像进行第二格式转换,得到具有第二目标格式的第三目标图像,包括:
获取所述第二目标图像中每个像素点对应的第三颜色编码信息;
基于所述第三颜色编码信息,并行计算,得到所述第三目标图像中每个像素点对应的第二亮度信息;
基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述第三颜色编码信息,并行计算,得到所述第三目标图像中每个像素点对应的第二色彩信息;
基于所述第三目标图像中每个像素点对应的第二亮度信息和第二色彩信息,得到具有所述第二目标格式的第三目标图像。
8.根据权利要求1所述的图像处理方法,其特征在于,所述第一对象标记信息包括对象的检测框信息、对象的身份标识符、所述对象的状态特征信息、所述对象的属性特征信息中的至少一种。
9.根据权利要求1所述的图像处理方法,其特征在于,所述待处理图像包括在车舱内拍摄的图像,所述对象包括驾驶员和/或乘客。
10.一种检测方法,其特征在于,包括:
获取在车舱内拍摄的待处理图像以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;
在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理得到的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;对所述待处理图像进行第一格式转换以及对所述待处理图像进行标记处理为同步执行的;
将所述第二目标图像转换为第三目标图像,并进行展示;
基于展示的第三目标图像,对车辆的驾驶进行安全预警。
11.一种图像处理装置,其特征在于,包括:
第一信息获取模块,用于获取待处理图像,以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
图像转换模块,用于对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;
图像标记模块,用于在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;对所述待处理图像进行第一格式转换以及对所述待处理图像进行标记处理为同步执行的;
第一图像处理模块,用于将所述第二目标图像转换为第三目标图像,并将所述第三目标图像发送到目标设备。
12.一种检测装置,其特征在于,包括:
第二信息获取模块,用于获取在车舱内拍摄的待处理图像以及所述待处理图像的前一帧图像对应的处理时长;所述处理时长为按照如下方式确定的:在对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行目标格式转换,并在所述目标格式转换过程中进行标记处理对应的时长;在未对所述前一帧图像进行标记处理的情况下,确定所述处理时长为对所述前一帧图像进行所述目标格式转换对应的时长;
第三图像处理模块,用于对所述待处理图像进行第一格式转换,得到具有第一目标格式的第一目标图像;在所述处理时长未超过第一预设时长的情况下,获取对所述待处理图像进行标记处理的第一对象标记信息,并将所述第一对象标记信息标记在所述第一目标图像上,得到第二目标图像;对所述待处理图像进行第一格式转换以及对所述待处理图像进行标记处理为同步执行的;将所述第二目标图像转换为第三目标图像,并进行展示;
预警模块,用于基于展示的第三目标图像,对车辆的驾驶进行安全预警。
13.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至9任一项所述的图像处理方法的步骤,或者,执行如权利要求10所述的检测方法的步骤。
14.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至9任一项所述的图像处理方法的步骤,或者,执行如权利要求10所述的检测方法的步骤。
CN202110875661.9A 2021-07-30 2021-07-30 一种图像处理方法、装置、计算机设备和存储介质 Active CN113613071B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110875661.9A CN113613071B (zh) 2021-07-30 2021-07-30 一种图像处理方法、装置、计算机设备和存储介质
PCT/CN2022/088545 WO2023005286A1 (zh) 2021-07-30 2022-04-22 图像处理

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110875661.9A CN113613071B (zh) 2021-07-30 2021-07-30 一种图像处理方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN113613071A CN113613071A (zh) 2021-11-05
CN113613071B true CN113613071B (zh) 2023-10-20

Family

ID=78306317

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110875661.9A Active CN113613071B (zh) 2021-07-30 2021-07-30 一种图像处理方法、装置、计算机设备和存储介质

Country Status (2)

Country Link
CN (1) CN113613071B (zh)
WO (1) WO2023005286A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113613071B (zh) * 2021-07-30 2023-10-20 上海商汤临港智能科技有限公司 一种图像处理方法、装置、计算机设备和存储介质
CN115661325A (zh) * 2022-12-21 2023-01-31 麒麟软件有限公司 一种基于neon指令的纹理格式转换优化方法及系统

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002092627A (ja) * 2000-09-19 2002-03-29 Namco Ltd ゲーム装置、及び情報記憶媒体
CN1860792A (zh) * 2003-09-02 2006-11-08 索尼株式会社 视频编码设备、控制视频编码方法和控制视频编码程序
JP2007174472A (ja) * 2005-12-26 2007-07-05 Sony Corp 動画処理装置、動画処理方法、動画処理方法のプログラム及び動画処理方法のプログラムを記録した記録媒体
WO2012029854A1 (ja) * 2010-09-03 2012-03-08 ヤマハ株式会社 動画圧縮制御装置、動画記録装置、動画記録再生装置、動画圧縮制御方法及び記録媒体
CN102868871A (zh) * 2012-10-24 2013-01-09 广东威创视讯科技股份有限公司 一种视频图像格式的转换方法和装置
JP2013046190A (ja) * 2011-08-24 2013-03-04 Riso Kagaku Corp 画像処理装置
CN107967669A (zh) * 2017-11-24 2018-04-27 腾讯科技(深圳)有限公司 图片处理的方法、装置、计算机设备及存储介质
CN109379624A (zh) * 2018-11-27 2019-02-22 Oppo广东移动通信有限公司 视频处理方法、装置、电子设备及存储介质
CN109886928A (zh) * 2019-01-24 2019-06-14 平安科技(深圳)有限公司 一种目标细胞标记方法、装置、存储介质及终端设备
CN111091091A (zh) * 2019-12-16 2020-05-01 北京迈格威科技有限公司 目标对象重识别特征的提取方法、装置、设备及存储介质
CN111343463A (zh) * 2020-04-14 2020-06-26 北京都是科技有限公司 一种图像编码设备、方法及图像编码器
CN111949511A (zh) * 2020-07-09 2020-11-17 厦门美柚股份有限公司 应用程序的卡顿处理方法、装置、终端及存储介质
CN112040082A (zh) * 2020-09-10 2020-12-04 广东新禾道信息科技有限公司 一种影像图片批量处理方法、装置、服务器及存储介质
CN112887510A (zh) * 2021-01-19 2021-06-01 三一重工股份有限公司 基于视频检测的视频播放方法及系统
CN113111682A (zh) * 2020-01-09 2021-07-13 阿里巴巴集团控股有限公司 目标对象感知方法和装置、感知基站、感知系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017126333A1 (ja) * 2016-01-21 2017-07-27 ソニー株式会社 画像処理装置および方法
CN109196865B (zh) * 2017-03-27 2021-03-30 华为技术有限公司 一种数据处理方法、终端以及存储介质
WO2019245585A1 (en) * 2018-06-22 2019-12-26 Hewlett-Packard Development Company, L.P. Image markups
EP3815041A1 (en) * 2018-06-27 2021-05-05 Telefonaktiebolaget LM Ericsson (publ) Object tracking in real-time applications
CN110728210A (zh) * 2019-09-25 2020-01-24 上海交通大学 一种三维点云数据的半监督目标标注方法和系统
CN113613071B (zh) * 2021-07-30 2023-10-20 上海商汤临港智能科技有限公司 一种图像处理方法、装置、计算机设备和存储介质

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002092627A (ja) * 2000-09-19 2002-03-29 Namco Ltd ゲーム装置、及び情報記憶媒体
CN1860792A (zh) * 2003-09-02 2006-11-08 索尼株式会社 视频编码设备、控制视频编码方法和控制视频编码程序
JP2007174472A (ja) * 2005-12-26 2007-07-05 Sony Corp 動画処理装置、動画処理方法、動画処理方法のプログラム及び動画処理方法のプログラムを記録した記録媒体
WO2012029854A1 (ja) * 2010-09-03 2012-03-08 ヤマハ株式会社 動画圧縮制御装置、動画記録装置、動画記録再生装置、動画圧縮制御方法及び記録媒体
JP2013046190A (ja) * 2011-08-24 2013-03-04 Riso Kagaku Corp 画像処理装置
CN102868871A (zh) * 2012-10-24 2013-01-09 广东威创视讯科技股份有限公司 一种视频图像格式的转换方法和装置
CN107967669A (zh) * 2017-11-24 2018-04-27 腾讯科技(深圳)有限公司 图片处理的方法、装置、计算机设备及存储介质
CN109379624A (zh) * 2018-11-27 2019-02-22 Oppo广东移动通信有限公司 视频处理方法、装置、电子设备及存储介质
CN109886928A (zh) * 2019-01-24 2019-06-14 平安科技(深圳)有限公司 一种目标细胞标记方法、装置、存储介质及终端设备
CN111091091A (zh) * 2019-12-16 2020-05-01 北京迈格威科技有限公司 目标对象重识别特征的提取方法、装置、设备及存储介质
CN113111682A (zh) * 2020-01-09 2021-07-13 阿里巴巴集团控股有限公司 目标对象感知方法和装置、感知基站、感知系统
CN111343463A (zh) * 2020-04-14 2020-06-26 北京都是科技有限公司 一种图像编码设备、方法及图像编码器
CN111949511A (zh) * 2020-07-09 2020-11-17 厦门美柚股份有限公司 应用程序的卡顿处理方法、装置、终端及存储介质
CN112040082A (zh) * 2020-09-10 2020-12-04 广东新禾道信息科技有限公司 一种影像图片批量处理方法、装置、服务器及存储介质
CN112887510A (zh) * 2021-01-19 2021-06-01 三一重工股份有限公司 基于视频检测的视频播放方法及系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
C. Ramirez et al..Property of Images in Bayer Formats in the Digital Processing of Images.《2008 Electronics, Robotics and Automotive Mechanics Conference (CERMA '08)》.2008,全文. *
基于延迟着色技术的大场景反走样渲染架构设计;罗德宁 等;《工程科学与技术》(第4期);全文 *
实时与历史结合的多视图态势呈现系统设计与实现;高楚阳;《中国优秀硕士学位论文全文数据库工程信息科技》(第8期);全文 *
金昊 等.基于VC++在数字图像处理中的格式转换和图像增强处理.《电脑知识与技术》.2005,(第4期),全文. *

Also Published As

Publication number Publication date
CN113613071A (zh) 2021-11-05
WO2023005286A1 (zh) 2023-02-02

Similar Documents

Publication Publication Date Title
CN113613071B (zh) 一种图像处理方法、装置、计算机设备和存储介质
US10110936B2 (en) Web-based live broadcast
CN108461061B (zh) 显示系统及用于将数据供应到显示器的方法
JP2018523356A5 (zh)
WO2019023709A1 (en) SYSTEMS AND METHODS FOR COMPRESSION WITHOUT EFFECTIVE LOSS OF CAPTURED RAW IMAGE INFORMATION
CN109845282B (zh) 图像数据处理方法及传输装置、图像显示方法及存储介质
EP3270371A1 (en) Method and apparatus for managing graphics layers within a graphics display component
TW200808065A (en) Video data compression system and method
CN113596581B (zh) 一种图像格式转换方法、装置、计算机设备和存储介质
KR20200011000A (ko) 증강 현실 프리뷰 및 위치 추적을 위한 장치 및 방법
US11321812B2 (en) Display method, display device, virtual reality display device, virtual reality device, and storage medium
CN103455748A (zh) 校验码获取方法及装置
CN112184538B (zh) 图像加速方法、相关装置、设备及存储介质
US20140204005A1 (en) System, method, and computer program product for distributed processing of overlapping portions of pixels
CN113366427A (zh) 电子设备及其控制方法
WO2017107424A1 (zh) 图像处理方法、装置、设备及非易失性计算机存储介质
CN116450149B (zh) 一种硬件解码方法、设备及存储介质
EP3811626B1 (en) Face-based frame packing for video calls
TW201622426A (zh) 用於後製處理一視訊串流之方法及裝置
CN110072144A (zh) 一种图像拼接处理方法、装置、设备及计算机存储介质
CN110378831B (zh) 水印的处理方法和装置
CN110248150B (zh) 一种图片显示的方法、设备及计算机存储介质
US9036874B2 (en) Image processing and recording system preidentifying and prestoring images with predetermined features and method thereof
CN110570502A (zh) 显示图像帧的方法、装置、电子设备和计算机可读存储介质
US9727949B1 (en) Providing secure digital images

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40055258

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant