diff options
Diffstat (limited to 'SD-VBS/common/toolbox/toolbox_basic/TOOLBOX_calib/Rectangle2Square.m')
-rwxr-xr-x | SD-VBS/common/toolbox/toolbox_basic/TOOLBOX_calib/Rectangle2Square.m | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/SD-VBS/common/toolbox/toolbox_basic/TOOLBOX_calib/Rectangle2Square.m b/SD-VBS/common/toolbox/toolbox_basic/TOOLBOX_calib/Rectangle2Square.m new file mode 100755 index 0000000..a6bbbe5 --- /dev/null +++ b/SD-VBS/common/toolbox/toolbox_basic/TOOLBOX_calib/Rectangle2Square.m | |||
@@ -0,0 +1,19 @@ | |||
1 | function [square] = Rectangle2Square(rectangle,L,W); | ||
2 | |||
3 | % Generate the square from a rectangle of known segment lengths | ||
4 | % from pt1 to pt2 : L | ||
5 | % from pt2 to pt3 : W | ||
6 | |||
7 | [u_hori,u_vert] = UnWarpPlane(rectangle); | ||
8 | |||
9 | coeff_x = sqrt(W/L); | ||
10 | coeff_y = 1/coeff_x; | ||
11 | |||
12 | x_coord = [ 0 coeff_x coeff_x 0]; | ||
13 | y_coord = [ 0 0 coeff_y coeff_y]; | ||
14 | |||
15 | |||
16 | square = rectangle(:,1) * ones(1,4) + u_hori*x_coord + u_vert*y_coord; | ||
17 | square = square ./ (ones(3,1)*square(3,:)); | ||
18 | |||
19 | |||