首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种固定缩放的优化实现方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:北京君正集成电路股份有限公司

摘要:本发明提供一种固定缩放的优化实现方法,包括:S1计算一行的像素值:原图1440x1080,生成目标图2048x1536,从原图的一整行中每次取出45个像素,生成目标图的64个像素点;设原图宽高分别为src_w=1440,src_h=1080,图像像素值数据指针为src_data;生成的目标图宽高分别为dst_w=2048,dst_h=1536,图像像素值数据指针为dst_data;原图的宽与生成图的宽比例为src_val;a计算生成目标图像的64个像素值;b计算生成目标图像一行的像素值;c使用simd指令方法得到结果;S2高度上的计算:原图的高与生成图高比例为src_val;在高度上:landmark_hj=roundscale_val_h×j,0≤j<dst_h,j∈N。

主权项:1.一种固定缩放的优化实现方法,其特征在于,所述方法包括以下步骤:S1,计算一行的像素值:原图1440x1080,生成目标图2048x1536,其中1440与2048的最大公约数是32,也就是一行循环最小次数为32次,所以能够从原图1440x1080的一行中每次取出45个像素,生成目标图2048x1536的64个像素点,这也是原图和生成图对应的整数像素个数的最小值;设原图1440x1080宽高分别为srcw=1440,srch=1080,图像像素值数据指针为srcdata;生成的目标图2048x1536宽高分别为dstw=2048,dsth=1536,图像像素值数据指针为dstdata;原图1440x1080的宽与生成图2048x1536宽比例为srcval: 得,scale_val=0.703125;a计算生成目标图像的64个像素值:每行中对取出的45个像素,生成目标图2048x1536中的64个像素点,设开始取出原图和生成目标图的指针分别为srcval,dstval;设landnarki=roundscale_val×i,其中,rouudscale_val×i是对scale_val×i或scale_val×i-1采用四舍五入方式取整;将landnarki对应的像素值与landnarki-1对应的像素值相加,再求均值,得到的就是目标图像i位置对应的像值;这个计算过程,命名为循环均值;b计算生成目标图像一行的像素值:设生成目标图像一行的行高为dst_j,对应使用的原图图像该行的行高为src_j,有src_val=src_data+src_j*src_w;dst_val=dst_data+dst_j*dst_w;每次执行一次计算生成目标图像的64个像素值后,将src_val+=45;dst_val+=64;直到该行执行完位置;c使用simd指令的设计方法:simd指令中加载数据指令load每次加载16个8bit数据到寄存器中,一个寄存器只能存放128bit数据,也就是16个8比特数据;设寄存器为vr1,vr1=loadsrc_val,加载数据从src_val的地址开始加载,加载16个8bit数据;加载的有需要的像素值,也有选择编号,也就是选择哪些位置的坐标,即16个landmarki值;再使用shufv指令对数据重排,设输入寄存器为vr2,vr3,选择编号的寄存器为vr_s,存放的是选择哪些位置的坐标,即16个landmarki值,输出寄存器为vr5;vr4=shufvvr2,vr3,vr_s;重排方式是根据vr_s中16个8bit数据的情况进行选择,数据大小为0~31;由于只需要第一个寄存器vr2中的数据,并根据缩放情况有的使用一次,有的使用两次,进行设置选择哪个数据;在shufv指令中,第一个寄存器vr2中所有数据编号在前面,第二个寄存器vr3数据在后面,也就是第一个寄存器编号为0~15,第二个寄存器数据编号为16~31;第三个寄存器vr_s是选择编号的寄存器;提取出如下的数据:第一组中,第一个寄存器放第一次加载的数据,只使用第一个寄存器的数据,没有使用第二个寄存器中的数据,所以第二个寄存器随便放置任意寄存器数据;第二组中,第一个寄存器放第二次加载的数据,第二个寄存器,放置第一次加载数据的寄存器;将landmarki中第一组的最后一个数据放置到landmarki中第二组的第0的位置;由于是读取的是第二个寄存器中第10个位置,所以是16+10,即26,其中16是第一个寄存器占用16个编号,第二个寄存器初始0的位置变为16,第二组数据依次后移,最后一个数据溢出;第三组中,第一个寄存器放第三次加载的数据,第二个寄存器,放置第二次加载数据的寄存器;将landmarki中第二组的最后一个数据放置到landmarki中第二组的第0的位置;由于是读取的是第二个寄存器中第11个位置,所以是16+11,即27,其中16是第一个寄存器占用16个编号,第二个寄存器初始0的位置变为16,第三组数据依次后移,最后一个数据溢出;第四组中,第一个寄存器放第四次加载的数据,第二个寄存器,放置第三次加载数据的寄存器;将landmarki中第三组的最后一个数据放置到landmarki中第二组的第0的位置;由于是读取的是第二个寄存器中第10个位置,所以是16+10,即26,其中16是第一个寄存器占用16个编号,第二个寄存器初始0的位置变为16,第四组数据依次后移,最后一个数据溢出;最后执行simd的均值指令计算,设输入寄存器vr6和vr7,vr6和vr7寄存器中每个里面存储的是16个8比特数据,生成结果保存到寄存器vr8,vr8里面存储的是16个8比特数据,具体指令为vr8=avgvr6,vr7,这是求两组16个8比特数据对应的均值,通过simd的均值指令计算即可得到结果;S2,在高度上的计算:原图1440x1080的高与生成图2048x1536高比例为src_val: 得,scale_va,_h=0.703125在高度上使用公式landmark_hj=roundscale_va,_h×j,0≤j<dst_h,j∈N其中j的取值范围是生成目标图像的高度范围,landmark_hj是取的具体原图图像的高度。

全文数据:

权利要求:

百度查询: 北京君正集成电路股份有限公司 一种固定缩放的优化实现方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

相关技术
相关技术
相关技术