diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2011-11-22 18:04:34 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2011-11-22 18:04:34 +0400 |
commit | 0bdbddf3d33637d5b4ef965629a3ad26a830d848 (patch) | |
tree | 992950a676e33ddded6e270e922de85407b53774 /extern | |
parent | 7ae0ad4fddf0d84567a97b1bca34844995e1a787 (diff) | |
parent | 47853bf6f6fa7ab4dc523fe255a8253b7ae9f914 (diff) |
Merging r41937 through r42061 from trunk into soc-2011-tomato
Diffstat (limited to 'extern')
-rw-r--r-- | extern/libmv/libmv/simple_pipeline/camera_intrinsics.cc | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/extern/libmv/libmv/simple_pipeline/camera_intrinsics.cc b/extern/libmv/libmv/simple_pipeline/camera_intrinsics.cc index 917f80e6926..ba88ce7676d 100644 --- a/extern/libmv/libmv/simple_pipeline/camera_intrinsics.cc +++ b/extern/libmv/libmv/simple_pipeline/camera_intrinsics.cc @@ -24,7 +24,7 @@ namespace libmv { struct Offset { - signed char ix, iy; + short ix, iy; unsigned char fx,fy; }; @@ -201,20 +201,14 @@ void CameraIntrinsics::ComputeLookupGrid(Grid* grid, int width, int height, doub warp_y = warp_y*aspy + 0.5 * overscan * h; int ix = int(warp_x), iy = int(warp_y); int fx = round((warp_x-ix)*256), fy = round((warp_y-iy)*256); - if(fx == 256) { fx=0; ix++; } - if(fy == 256) { fy=0; iy++; } // Use nearest border pixel if( ix < 0 ) { ix = 0, fx = 0; } if( iy < 0 ) { iy = 0, fy = 0; } if( ix >= width-2 ) ix = width-2; if( iy >= height-2 ) iy = height-2; - if ( ix-x > -128 && ix-x < 128 && iy-y > -128 && iy-y < 128 ) { - Offset offset = { ix-x, iy-y, fx, fy }; - grid->offset[y*width+x] = offset; - } else { - Offset offset = { 0, 0, 0, 0 }; - grid->offset[y*width+x] = offset; - } + + Offset offset = { ix-x, iy-y, fx, fy }; + grid->offset[y*width+x] = offset; } } } |