The the encoder and image set parameters for a test run. Args: encoder_name: The encoder name. reference_name: The reference encoder name. test_set_name: The test image set. Return: The test parameters for the requested encoder and test set. An instance
(encoder_name: str, reference_name: str,
test_set_name: str)
| 287 | |
| 288 | |
| 289 | def get_encoder_params(encoder_name: str, reference_name: str, |
| 290 | test_set_name: str) \ |
| 291 | -> tuple[te.EncoderBase, str, str, str]: |
| 292 | ''' |
| 293 | The the encoder and image set parameters for a test run. |
| 294 | |
| 295 | Args: |
| 296 | encoder_name: The encoder name. |
| 297 | reference_name: The reference encoder name. |
| 298 | test_set_name: The test image set. |
| 299 | |
| 300 | Return: |
| 301 | The test parameters for the requested encoder and test set. An instance |
| 302 | of the encoder wrapper class, the output data name, the output result |
| 303 | directory, and the reference to use. |
| 304 | ''' |
| 305 | used_reference_name: Optional[str] = None |
| 306 | encoder: te.EncoderBase |
| 307 | |
| 308 | if encoder_name.startswith('ref'): |
| 309 | _, version, simd = encoder_name.split('-') |
| 310 | |
| 311 | # Version-specific variants |
| 312 | compatible_prefixes = ['5.'] |
| 313 | if any(True for x in compatible_prefixes if version.startswith(x)): |
| 314 | encoder = te.Encoder2xRel(version, simd) |
| 315 | name = f'reference-{version}-{simd}' |
| 316 | out_dir = f'Test/Images/{test_set_name}' |
| 317 | |
| 318 | return (encoder, name, out_dir, reference_name) |
| 319 | |
| 320 | # Latest main |
| 321 | if version == 'main': |
| 322 | encoder = te.Encoder2x(simd) |
| 323 | name = f'reference-{version}-{simd}' |
| 324 | out_dir = f'Test/Images/{test_set_name}' |
| 325 | return (encoder, name, out_dir, reference_name) |
| 326 | |
| 327 | assert False, f'Encoder {encoder_name} not recognized' |
| 328 | |
| 329 | encoder = te.Encoder2x(encoder_name) |
| 330 | name = f'develop-{encoder_name}' |
| 331 | out_dir = f'TestOutput/{test_set_name}' |
| 332 | used_reference_name = reference_name.replace('ref', 'reference') |
| 333 | return (encoder, name, out_dir, used_reference_name) |
| 334 | |
| 335 | |
| 336 | def parse_command_line(): |