C+ C NAME: C smei_frm_stats C PURPOSE: C Determines some stats on frame after measle removal C CALLING SEQUENCE: subroutine smei_frm_stats(nx,ny,frame,pixsum,ipixsum,pixdif,ipixdif) C INPUTS: C nx integer C ny integer C frame(nx,ny) real C OUTPUTS: C pixsum real C ipixsum integer C pixdif real C ipixdif integer C INCLUDE: include 'smei_frm_layout.h' C CALLS: C BadR4, smei_frm_mode C MODIFICATION HISTORY: C- integer camera integer nx integer ny real frame(nx,ny) real pixsum integer ipixsum real pixdif integer ipixdif real big_val /5000.0/ integer smei_frm_mode bad = BadR4() mode = smei_frm_mode(nx, nbin) ileft = (SMEI__FRM_LEFT -1)/nbin+1 ! Column with partially covered pixels iright = SMEI__FRM_RIGHT /nbin ! Column with partially covered pixels jtop = SMEI__FRM_NY /nbin ileft = ileft +1 ! Stay away from partially covered column ? iright = iright-1 pixsum = 0.0 ipixsum = 0 pixdif = 0.0 ipixdif = 0 do j=1,ny do i=1,nx if (i .gt. ileft .and. i .lt. iright.and. j .gt. 1) then val = frame(i,j) if (val .ne. bad .and. val .lt. big_val)then ipixsum = ipixsum+1 pixsum = pixsum +val if (frame(i-1,j) .ne. bad .and. frame(i-1,j) .lt. big_val) then ipixdif = ipixdif+1 pixdif = pixdif +abs(frame(i-1,j)-val) end if if (frame(i,j-1) .ne. bad .and. frame(i,j-1) .lt. big_val) then ipixdif = ipixdif+1 pixdif = pixdif +abs(frame(i,j-1)-val) end if end if end if end do end do if (ipixsum .ne. 0) pixsum = pixsum/ipixsum if (ipixdif .ne. 0) pixdif = pixdif/ipixdif return end