| 99 | } |
| 100 | |
| 101 | static Shape Shape77AsXm2vts68( // return an approximated XM2VTS 68 point shape |
| 102 | const Shape& shape) // in: Stasm 77 point shape |
| 103 | { |
| 104 | CV_Assert(shape.rows == 77); |
| 105 | |
| 106 | Shape newshape(68, 2); |
| 107 | |
| 108 | CopyPoint(newshape, shape, 0, 0); |
| 109 | InterPoint(newshape, shape, 1, .6667, 1, 2); |
| 110 | InterPoint(newshape, shape, 2, .5, 2, 3); |
| 111 | CopyPoint(newshape, shape, 3, 3); |
| 112 | InterPoint(newshape, shape, 4, .3333, 3, 4); |
| 113 | InterPoint(newshape, shape, 5, .6667, 4, 5); |
| 114 | CopyPoint(newshape, shape, 6, 5); |
| 115 | CopyPoint(newshape, shape, 7, 6); |
| 116 | CopyPoint(newshape, shape, 8, 7); |
| 117 | InterPoint(newshape, shape, 9, .3333, 7, 8); |
| 118 | InterPoint(newshape, shape, 10, .6667, 8, 9); |
| 119 | CopyPoint(newshape, shape, 11, 9); |
| 120 | InterPoint(newshape, shape, 12, .5, 9, 10); |
| 121 | InterPoint(newshape, shape, 13, .3333, 10, 11); |
| 122 | CopyPoint(newshape, shape, 14, 12); |
| 123 | CopyPoint(newshape, shape, 15, 25); |
| 124 | CopyPoint(newshape, shape, 16, 24); |
| 125 | CopyPoint(newshape, shape, 17, 23); |
| 126 | CopyPoint(newshape, shape, 18, 22); |
| 127 | CopyPoint(newshape, shape, 19, 27); |
| 128 | CopyPoint(newshape, shape, 20, 26); |
| 129 | CopyPoint(newshape, shape, 21, 18); |
| 130 | CopyPoint(newshape, shape, 22, 17); |
| 131 | CopyPoint(newshape, shape, 23, 16); |
| 132 | CopyPoint(newshape, shape, 24, 21); |
| 133 | CopyPoint(newshape, shape, 25, 20); |
| 134 | CopyPoint(newshape, shape, 26, 19); |
| 135 | CopyPoint(newshape, shape, 27, 34); |
| 136 | CopyPoint(newshape, shape, 28, 32); |
| 137 | CopyPoint(newshape, shape, 29, 30); |
| 138 | CopyPoint(newshape, shape, 30, 36); |
| 139 | CopyPoint(newshape, shape, 31, 38); |
| 140 | CopyPoint(newshape, shape, 32, 44); |
| 141 | CopyPoint(newshape, shape, 33, 42); |
| 142 | CopyPoint(newshape, shape, 34, 40); |
| 143 | CopyPoint(newshape, shape, 35, 46); |
| 144 | CopyPoint(newshape, shape, 36, 39); |
| 145 | InterPoint(newshape, shape, 37, .6667, 30, 40); |
| 146 | newshape(37, IX) = shape(50, IX); |
| 147 | CopyPoint(newshape, shape, 38, 50); |
| 148 | CopyPoint(newshape, shape, 39, 58); |
| 149 | CopyPoint(newshape, shape, 40, 57); |
| 150 | CopyPoint(newshape, shape, 41, 56); |
| 151 | CopyPoint(newshape, shape, 42, 55); |
| 152 | CopyPoint(newshape, shape, 43, 54); |
| 153 | CopyPoint(newshape, shape, 44, 48); |
| 154 | InterPoint(newshape, shape, 45, .3333, 30, 40); |
| 155 | newshape(45, IX) = shape(48, IX); |
| 156 | CopyPoint(newshape, shape, 46, 51); |
| 157 | CopyPoint(newshape, shape, 47, 53); |
| 158 | CopyPoint(newshape, shape, 48, 59); |
no test coverage detected