首页 > 编程知识 正文

oee计算方法,pdaf的DCC测试原理

时间:2023-05-06 03:07:55 阅读:50970 作者:2168

Pdaf数据捕获进程

根据上层的isCommand命令,通过otp取得了pd info。 构建流控制pdaf相关信息的结构体pd_profile,通过sendCommand从snesor driver文件中获取信息pdaf capacity、pdaf info、vc info、crop win info。 将矫正数据发送到PD核心后,将otp中的pd info与驱动程序中进行比较,如果不一致则报告错误。 convertpdBufFormat将pd点一起转换为原始16格式,对buffer进行重新排序,并在l的前r之后,即转换为pd algo所需的pd格式。

Pd info和相关计算Pd info结构

PD Block是PD点分布的最小单位,各Block内PD点的位置相同,因此驱动中配置一个PD Block内的PD坐标,根据起点的坐标和横向纵向上有几个PD Block,在所有PD点的Bayer raw域上

staticstructset _ PD _ block _ info _ timg sensor _ PD _ info _ 1920 _ 1080=

{

. i4OffsetX=16,//x offset of PD area

. i4OffsetY=12,//y offset of PD area

. i4PitchX=16,//x pitch/width of a PD block

. i4PitchY=16,//y pitch/height of a PD block

. i4PairNum=8,//numofpairsl/rpdpixelwithinapdblock

. i4SubBlkW=8,//一个块中y方向pairs的密度

. i4SubBlkH=4,//yintervalof 1pai rl/rpdpixelwithinapdblock

. i4BlockNumX=120,//PD block number in X direction

. i4BlockNumY=67,//PD block number in Y direction

. iMirrorFlip=0,//显示图的方向和模块工厂校正后的图的方向的相对方向

. i4PosR={

{ 16,13 }、{ 24,13 }、{ 20,17 }、{ 28,17 }、

{ 16,21 }、{ 24,21 }、{ 20,25 }、{ 28,25 }、

(,

. i4PosL={

{ 17,13 }、{ 25,13 }、{ 21,17 }、{ 29,17 }、

{ 17,21 }、{ 25,21 }、{ 21,25 }、{ 29,25 }、

(,

. i4 crop={ 0,0 }、{ 0,0 }、{ 1040,960 }、{ 0,0 }、{ 0,0 }、{ 0,0 }、{ 0,0 }、{ 0,0 }、{0}

(;

i4BlockNumX=1920/i4PitchX

i4BlockNumY=1080/i4PitchY

i4Crop=?

mboolpd _ xxxmipiraw :3360 is support (SPD配置文件_ tipd配置文件)。

{

if () IPDprofile.I4sensormode==5) ) iPdProfile.uImgXsz==1920 ) (iPdProfile.uImgYsz==1080 ) ) m _ pdb uu if(m_PDbuf ) { delete m_PDBuf; m_PDBuf=nullptr; } m _ pdbufsz=m _ pdbufxsz * m _ pdbufysz; m_PDBuf=new uint16_t [m_PDBufSz]; ret=MTRUE; aa _ logd (' [ 1080 p 60 fps ] is support : I4sensor mode : % dw [ % d ] s [ % d ]n ',IPD配置文件. I4sensor mode,IPD

这里,m_PDXSz是各行pixel的个数,m_PDYSz表示行数,

pixel num=pitchx/densityx * block numx=16/8 * 120=240

linenum=pitchy/densityy *2* blocknumy=16/8 *2* 67=536///l和r上下分布,所以乘以2

pd win size

staticstructsensor _ winsize _ info _ structimgsensor _ winsize _ info [7]={

{8032、6032、0、12、8032、6008、4016、3004、8、2、4000、3000、0、4000、3000},/preview(4000x3000 ) ) ) )

{8032、6032、0、12、8032、6008、4016、3004、8、2、4000、3000、0、4000、3000},/capture(4000x3000 ) ) ) )。

{8032、6032、0、12、8032、6008、4016、3004、8、2、4000、3000、0、4000、3000},/video(4000x3000 ) }

{8032、6032、0、1568、8032、2896、2008、724、364、2、1280、720、0、1280、720},/hightspeedvideo(1280 )

{8032、6032、0、12、8032、6008、4016、3004、8、2、4000、3000、0、4000、3000},/slim视频(1280 x720 ) ) )

{8032、6032、2080、1932、3872、2168、1936、1084、8、2、1920、1080、0、1920、1080},/custom1(1920x1080 )

{8032、6032、0、14、8032、6004、8032、6004、16、2、8000、6000、0、8000、6000},/remosaic(8000x6000 ) ) )。

(;

8032 6032传感器内部有效像素crop binning crop如果有更小的尺寸,也需要crop

为了使中心一致,0 12上下都裁剪crop

8032-(0*2) 6032-(12*2)=8032 6008重新绑定

0163004继续crop上下

4016-(8*2) 3004 )2)2)=4000 * 3000最终输出tgsize

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。