| @@ 247-271 (lines=25) @@ | ||
| 244 | min_pos = num |
|
| 245 | return curvature, np.float32(min_pos) |
|
| 246 | ||
| 247 | def _downsample(self, image, dsp_fact0, dsp_fact1): |
|
| 248 | """Downsample an image by averaging. |
|
| 249 | ||
| 250 | Parameters |
|
| 251 | ---------- |
|
| 252 | image : 2D array. |
|
| 253 | dsp_fact0 : downsampling factor along axis 0. |
|
| 254 | dsp_fact1 : downsampling factor along axis 1. |
|
| 255 | ||
| 256 | Returns |
|
| 257 | --------- |
|
| 258 | image_dsp : Downsampled image. |
|
| 259 | """ |
|
| 260 | (height, width) = image.shape |
|
| 261 | dsp_fact0 = np.clip(np.int16(dsp_fact0), 1, height // 2) |
|
| 262 | dsp_fact1 = np.clip(np.int16(dsp_fact1), 1, width // 2) |
|
| 263 | height_dsp = height // dsp_fact0 |
|
| 264 | width_dsp = width // dsp_fact1 |
|
| 265 | if dsp_fact0 == 1 and dsp_fact1 == 1: |
|
| 266 | image_dsp = image |
|
| 267 | else: |
|
| 268 | image_dsp = image[0:dsp_fact0 * height_dsp, 0:dsp_fact1 * width_dsp] |
|
| 269 | image_dsp = image_dsp.reshape( |
|
| 270 | height_dsp, dsp_fact0, width_dsp, dsp_fact1).mean(-1).mean(1) |
|
| 271 | return image_dsp |
|
| 272 | ||
| 273 | def pre_process(self): |
|
| 274 | self.win_width = np.int16(self.parameters['win_width']) |
|
| @@ 127-151 (lines=25) @@ | ||
| 124 | cor = list_cor[min_pos] |
|
| 125 | return cor |
|
| 126 | ||
| 127 | def _downsample(self, image, dsp_fact0, dsp_fact1): |
|
| 128 | """Downsample an image by averaging. |
|
| 129 | ||
| 130 | Parameters |
|
| 131 | ---------- |
|
| 132 | image : 2D array. |
|
| 133 | dsp_fact0 : downsampling factor along axis 0. |
|
| 134 | dsp_fact1 : downsampling factor along axis 1. |
|
| 135 | ||
| 136 | Returns |
|
| 137 | --------- |
|
| 138 | image_dsp : Downsampled image. |
|
| 139 | """ |
|
| 140 | (height, width) = image.shape |
|
| 141 | dsp_fact0 = np.clip(np.int16(dsp_fact0), 1, height // 2) |
|
| 142 | dsp_fact1 = np.clip(np.int16(dsp_fact1), 1, width // 2) |
|
| 143 | height_dsp = height // dsp_fact0 |
|
| 144 | width_dsp = width // dsp_fact1 |
|
| 145 | if dsp_fact0 == 1 and dsp_fact1 == 1: |
|
| 146 | image_dsp = image |
|
| 147 | else: |
|
| 148 | image_dsp = image[0:dsp_fact0 * height_dsp, 0:dsp_fact1 * width_dsp] |
|
| 149 | image_dsp = image_dsp.reshape( |
|
| 150 | height_dsp, dsp_fact0, width_dsp, dsp_fact1).mean(-1).mean(1) |
|
| 151 | return image_dsp |
|
| 152 | ||
| 153 | def set_filter_padding(self, in_data, out_data): |
|
| 154 | padding = np.int16(self.parameters['average_radius']) |
|