新闻资讯
新闻资讯

在i.MX RT处置器上使用PXP完成缩放跟扭转组合操作

本文重要探究怎样应用PXP实现缩放跟扭转组合操纵,PXP是NXP推出的一个2D图形减速器,重要实现对图像的数据格局转换、牢固角度扭转(90°,180°,270°),恣意比例缩放、混色,移位以及翻转等功效。运转平台为i.MX RT1170/1160/1060/1050/1040。本文援用地点:其功效构造框如下图所示:其任务域有3个:PS, AS以及OUTPUT。PS域跟AS域是输入域,假如不须要混色,就只要要PS域输入就能够了。PS域的输入图像能够停止缩放、色彩转换以及扭转等操纵。本文重要探讨一种特别的情形,经由PS域,进步行缩放再停止扭转,而后输出。比方摄像头输入一个640(w)* 480(h)的图片,经由缩小跟扭转后,输出到一个720(w)*1280(h)的屏幕上。这个转换进程如下图所示:为了实现这个操纵,咱们须要设置一个PS域的地区范畴,对这种场景,PS域的范畴应当设置为(0,0,1280-1,1280-1),这四个坐标分辨表现地区的左上角x,左上角y,右下角x,右下角y。下面的图形在PS域中的地位如下图所示:如许,经由过程把PS域的巨细设置为1280*1280的正方形,才干保障图像在缩小跟扭转完的进程中,全部的输入跟输出都在PS域的范畴内。超越PS域的范畴,不保障外面的数据准确,这一点在设置PXP的时间十分主要。别的PXP的框图构造外面有两个扭转(Rotation)单位。对要顺次做缩放跟扭转的情形,须要应用PXP的第二个扭转单位。上面咱们从代码层面看一看相干的设置:1.界说屏幕尺寸跟原始图像尺寸2. PS域的设置上面的代码是PS输入图像的buffer的相干设置。这里重点讲一下pitchBytes的观点。pitchBytes是用来指定一行图像的字节数,它即是一行数据的像素数*每个像素的字节数。PXP是靠这个参数来作为输入数据的换行界限。设置PS地区,须要设置为设置为(0,0,1280-1,1280-1)。3.设置输出buffer这里须要留神,当应用第二级的扭转单位时,咱们设置的输出地区的长跟宽是扭转之前的长度跟宽度,这一点十分轻易犯错。而pitchBytes个别都市配成扭转后的图像宽度(像素数)* 每个像素的字节数。4.设置缩放比例跟扭转角度这里缩放比例是经由过程缩放前的长宽跟缩放后的长宽来指定的,API外部会主动盘算缩放系数。运转成果如下,右边是原始图像,左边是缩小以及扭转90°失掉的图像: