+ }*/
+ unsafe {
+ let mut sptr0 = src.as_ptr();
+ let mut sptr1 = sptr0.offset(sstride as isize);
+ let mut dptr = dst.as_mut_ptr();
+ let mut la = *sptr0;
+ let mut lb = *sptr1;
+ for _ in 0..h {
+ for x in 0..w {
+ let a = *sptr0.offset((x + 1) as isize);
+ let b = *sptr1.offset((x + 1) as isize);
+ let aas = a.wrapping_add(la);
+ let bbs = b.wrapping_add(lb);
+ *dptr.offset(x as isize) = aas.wrapping_add(bbs) >> 2;
+ la = a;
+ lb = b;
+ }
+ sptr0 = sptr0.offset(sstride as isize);
+ sptr1 = sptr1.offset(sstride as isize);
+ dptr = dptr.offset(dstride as isize);
+ }