System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及解码,尤其涉及一种基于多核处理器的并行解码方法及装置。
技术介绍
1、随着图像解码技术的不断发展,一方面,数据源的分辨率越来越大,这对运算资源的消耗也同样越来越大;另一方面,处理器的主频提升进入了瓶颈,朝着多核处理器的方向发展,从单核到双核、四核,乃至八核、十六、三十二核等等。
2、传统的解码算法是将单线程运行在单核上,解码算法虽部署在多核处理器上,然而实际是落实在一个核心上进行处理,其它核心处于待机状态,导致运算资源的浪费,且使用灵活性受限。
技术实现思路
1、本专利技术的目的是为了解决现有技术中存在的缺点,而提出的一种基于多核处理器的并行解码方法及装置,实现更快的解码速度或更强的解码能力,灵活适配不同的应用场景,充分利用多核处理器的运算资源。
2、为实现上述目的,本专利技术采用了如下技术方案:
3、一种基于多核处理器的并行解码方法,包括以下步骤:
4、s1:根据多核处理器的核心数量,创建多个解码线程,每个解码线程创建一个解码实体;
5、s2:多个解码实体采用快速解码策略或强化解码策略执行解码任务。
6、其中,所述快速解码策略包括:
7、s2-11:采集图片;
8、s2-12:检查多个解码线程中是否有空闲的解码线程,如果有,则将图片发送给空闲的解码线程;如果没有,则等待解码线程空闲或丢弃图片;
9、s2-13:收到图片的解码线程独立执行解码任务,解码任务完成后
10、所述强化解码策略包括:
11、s2-21:采集图片;
12、s2-22:等待所有解码线程空闲后,将图片发送给所有解码线程;
13、s2-23:每个解码线程先执行各自对应的图像预处理任务,再执行解码任务;
14、s2-24:当一个解码线程解码成功时,将解码成功消息同步给所有解码线程;对多个解码线程输出的解码结果进行去重处理,以去除不同解码线程输出的重复的解码结果,并在去重处理后进行解码结果计数;当成功解码的解码结果数量达到设定数量时,所有解码线程结束本次解码,退出当前解码任务。
15、优选地,所述基于多核处理器的并行解码方法采用c语言或c++语言实现,算法内的变量全部为局部变量,以保证算法的可重入性。
16、优选地,步骤s2-23中图像预处理任务包括对图像进行膨胀、腐蚀、开闭、高斯滤波、中值滤波、直方图拉伸、均衡化等操作。
17、根据本专利技术的另一方面,提供一种并行解码装置,其包括多核处理器和至少一个存储器,所述至少一个存储器与所述多核处理器之间电连接,所述至少一个存储器存储有计算机程序,所述多核处理器执行所述计算机程序以实现如上所述的基于多核处理器的并行解码方法。
18、与现有技术相比,本专利技术的有益效果为:本专利技术基于多核处理器进行并行解码任务,采用快速解码策略或强化解码策略,实现更快的解码速度或更强的解码能力,可以灵活适配不同的应用场景,不受多核处理器核心数量的限制,能够充分利用多核处理器的运算资源,实现并行运算。随着多核处理器的蓬勃发展,其应用能效将会进一步得到放大。
本文档来自技高网...【技术保护点】
1.一种基于多核处理器的并行解码方法,其特征在于:包括以下步骤:
2.如权利要求1所述的基于多核处理器的并行解码方法,其特征在于:所述基于多核处理器的并行解码方法采用C语言或C++语言实现,算法内的变量全部为局部变量,以保证算法的可重入性。
3.如权利要求1所述的基于多核处理器的并行解码方法,其特征在于:步骤S2-23中图像预处理任务包括对图像进行膨胀、腐蚀、开闭、高斯滤波、中值滤波、直方图拉伸、均衡化等操作。
4.一种并行解码装置,其特征在于:包括多核处理器和至少一个存储器,所述至少一个存储器与所述多核处理器之间电连接,所述至少一个存储器存储有计算机程序,所述多核处理器执行所述计算机程序以实现如权利要求1-3中任意一项所述的基于多核处理器的并行解码方法。
【技术特征摘要】
1.一种基于多核处理器的并行解码方法,其特征在于:包括以下步骤:
2.如权利要求1所述的基于多核处理器的并行解码方法,其特征在于:所述基于多核处理器的并行解码方法采用c语言或c++语言实现,算法内的变量全部为局部变量,以保证算法的可重入性。
3.如权利要求1所述的基于多核处理器的并行解码方法,其特征在于:步骤s2-23中图像...
【专利技术属性】
技术研发人员:滕芝鹏,吕国相,刘伟光,陆骏,
申请(专利权)人:苏州识锐软件技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。