| 197 | |
| 198 | |
| 199 | def test_assembler_with_unique_bodypart(real_assemblies_montblanc): |
| 200 | with open(os.path.join(TEST_DATA_DIR, "montblanc_full.pickle"), "rb") as file: |
| 201 | data = pickle.load(file) |
| 202 | ass = inferenceutils.Assembler( |
| 203 | data, |
| 204 | max_n_individuals=3, |
| 205 | n_multibodyparts=4, |
| 206 | pcutoff=0.1, |
| 207 | min_affinity=0.1, |
| 208 | ) |
| 209 | assert len(ass.metadata["imnames"]) == 180 |
| 210 | assert ass.n_keypoints == 5 |
| 211 | assert len(ass.graph) == len(ass.paf_inds) == 6 |
| 212 | ass.assemble(chunk_size=0) |
| 213 | assert len(ass.assemblies) == len(real_assemblies_montblanc[0]) |
| 214 | assert len(ass.unique) == len(real_assemblies_montblanc[1]) |
| 215 | assemblies = np.concatenate([ass.xy for assemblies in ass.assemblies.values() for ass in assemblies]) |
| 216 | assemblies_gt = np.concatenate( |
| 217 | [ass.xy for assemblies in real_assemblies_montblanc[0].values() for ass in assemblies] |
| 218 | ) |
| 219 | np.testing.assert_equal(assemblies, assemblies_gt) |
| 220 | |
| 221 | |
| 222 | def test_assembler_with_identity(tmpdir_factory, real_assemblies): |