【技术实现步骤摘要】
图像处理方法、图像处理电路、装置及电子设备
[0001]本申请属于图像处理
,具体涉及一种图像处理方法
、
图像处理电路
、
装置及电子设备
。
技术介绍
[0002]在数字图像处理领域,经常需要并行实施多行相邻图像的滤波电路
。
这些并行的滤波电路滤波核以及计算单元都相同,只是参与滤波的像素矩阵不同
。
[0003]如图1所示,为并行滤波电路的示意图
(
以三路并行的3×3均值滤波为例
)
,每一路滤波电路实现均值滤波功能,即滤波窗口内的3×3个像素求平均值
。
现有方法中,每一路计算单元均消耗8个加法器以及一个除法器
。
但从图1中的像素矩阵可以发现,部分某一路滤波窗口的一些计算过程在相邻路中重复出现,比如
output data22
对应的下路中
pixel33+pixel23
,在
output data32
中路里也有相同的计算,即现有方法存在冗余的计算逻辑,导致增大整体电路面积与功耗的问题
。
技术实现思路
[0004]本申请实施例的目的是提供一种图像处理方法
、
图像处理电路
、
装置及电子设备,能够解决现有图像处理方法因存在冗余的计算逻辑,而导致的增大整体电路面积与功耗的问题
。
[0005]第一方面,本申请实施例提供了一种图像处理方法,该方法 ...
【技术保护点】
【技术特征摘要】
1.
一种图像处理方法,其特征在于,包括:获取待处理的图像帧,所述图像帧包括
M
行
N
列像素点,
M、N
为大于或者等于1的正整数;对于所述图像帧中的每个像素块,利用多个第一运算器,对所述像素块进行纵向运算处理,得到多个中间运算结果;其中,所述像素块中多次参与运算的像素点使用相同的所述第一运算器;以
M
行
n
列像素点为一个像素块,
n
为大于或者等于1,且小于
N
的正整数;利用多个第二运算器,对连续
m
个所述像素块对应的中间运算结果进行横向运算处理,得到多个最终运算结果,其中,连续
m
个所述像素块对应的中间运算结果存储于对应的寄存器内,
m
为大于1的正整数;基于多个所述最终运算结果,进行预设运算处理,得到处理后的结果
。2.
根据权利要求1所述的方法,其特征在于,所述利用多个第一运算器,对所述像素块进行纵向运算处理,得到多个中间运算结果,包括:对于所述像素块的每列像素点,每连续
k
行像素点为一个像素组,每个所述像素组经过纵向上
k
‑1个所述第一运算器后,得到一个中间运算结果;其中,像素点列方向上相邻两个所述像素组内存在多个相同的像素点,且相邻两个所述像素组中的最小行索引相差为1,每相邻两个所述像素组构成一个像素子块,每个所述像素子块中的两个所述像素组执行运算所使用的所述第一运算器中存在相同的所述第一运算器,
k
为大于1的奇数
。3.
根据权利要求2所述的方法,其特征在于,所述每个所述像素组经过纵向上
k
‑1个所述第一运算器后,得到一个中间运算结果,包括:将连续
k
行像素点中每两个相邻像素点经过纵向第一级运算中的一个所述第一运算器,得到
(k
‑
1)/2
个纵向临时运算结果;其中,所述纵向第一级运算中相邻的两个所述第一运算器执行运算的像素点各不相同;若
(k
‑
1)/2
为1,则将所述纵向临时运算结果和剩余的一个所述像素点经过一个所述第一运算器,得到一个中间运算结果;若
(k
‑
1)/2
不为1,则将纵向第
i
级运算中,两两为一组,每组中的两个所述第一运算器输出的纵向临时运算结果经过纵向第
i+1
级运算中的一个所述第一运算器,得到
(k
‑
1)/2
i+1
个纵向临时运算结果,每组中的两个所述第一运算器为相邻的两个所述第一运算器,
i
表示运算级数,从1开始取值,;若
(k
‑
1)/2
i+1
不为1,则将
i+1
赋值给
i
,返回执行上一步骤直至
(k
‑
1)/2
i+1
为1;若
(k
‑
1)/2
i+1
为1,则将所述纵向临时运算结果和剩余的一个所述像素点经过一个所述第一运算器,得到一个中间运算结果
。4.
根据权利要求2所述的方法,其特征在于,
k
的取值等于滤波窗口的高度
。5.
根据权利要求1所述的方法,其特征在于,
n
的取值由在一个时钟输入的像素的个数确定;其中,
n
为1时,
m
的取值等于滤波窗口的宽度;
n
不为1时,
m
的取值由所述滤波窗口的宽度和
n
共同决定
。6.
根据权利要求2所述的方法,其特征在于,所述利用多个第二运算器,对连续
m
个所述像素块对应的中间运算结果进行横向运算处理,得到多个最终运算结果,包括:以连续
m
个所述像素块中
、
像素点行方向上每连续
h
个像素组对应的中间运算结果为一
个集合,每个所述集合经过横向上
h
‑1个所述第二运算器后,得到一个最终运算结果;其中,连续
h
个所述像素组的每个所述像素组具有相同的行索引,
h
为大于1的奇数
。7.
根据权利要求6所述的方法,其特征在于,所述每个所述集合经过横向上
h
‑1个所述第二运算器后,得到一个最终运算结果,包括:将连续
h
个中间运算结果中每两个相邻中间运算结果经过横向第一级运算中的一个所述第二运算器,得到
(h
‑
1)/2
个横向临时运算结果;其中,所述横向第一级运算中相邻的两个所述第二运算器执行运算的中间运算结果各不相同;若
(h
‑
1)/2
为1,则将所述横向临时运算结果和剩余的一个所述中间运算结果经过一个所述第二运算器,得到一个最终运算结果;若
(h
‑
1)/2
不为1,则将横向第
j
级运算中每相邻的两个所述第二运算器输出的横向临时运算结果经过横向第
j+1
级运算中的一个所述第二运算器,得到
(h
‑
1)/2
j+1
个横向临时运算结果,
j
表示运算级数,从1开始取值;若
(h
‑
1)/2
j+1
不为1,则将
j+1
赋值给
j
,返回执行上一步骤直至
(h
‑
1)/2
j+1
为1;若
(h
‑
1)/2
j+1
为1,则将所横向临时运算结果和剩余的一个所述中间运算结果经过一个所述第二运算器,得到一个最终运算结果
。8.
根据权利要求6所述的方法,其特征在于,
h
的取值等于滤波窗口的宽度
。9.
一种图像处理装置,其特征在于,包括:获取模块,用于获取待处理的图像帧,所述图像帧包括
M
行
N
列像素点,
M、N
为大于或者等于1的正整数;第一处理模块,用于对于所述图像帧中的每个像素块,利用多个第一运算器,对所述像素块进行纵向运算处理,得到多个中间运算结果;其中,所述像素块中多次参与运算的像素点使用相同的所述第一运算器;以
M
行
n
列像素点为一个像素块,
n
为大于或者等于1,且小于
N
的正整数;第二处理模块,用于利用多个第二运算器,对连续
m
个所述像素块对应的中间运算结果进行横向运算处理,得到多个最终运算...
【专利技术属性】
技术研发人员:沈飘海,
申请(专利权)人:维沃移动通信有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。