IGNF / myria3d

Myria3D: Aerial Lidar HD Semantic Segmentation with Deep Learning
https://ignf.github.io/myria3d/
BSD 3-Clause "New" or "Revised" License
170 stars 23 forks source link

Optimization de la division en sous-tuiles lors de la préparation des données #18

Closed CharlesGaydon closed 2 years ago

CharlesGaydon commented 2 years ago

cette partie n'a pas été modifiée mais j'ai peut-être une suggestion à faire: D'après ce que je comprends, en premier on clone les data, ensuite on définit un mask et enfin on garde pour les data une partie définie par le mask et pour le clone l'autre partie. Ce qui me fait mal au coeur est que (si j'ai bien compris), on part d'un LAS, on le clone, et ensuite pour chacun on en vire une "moitié" pour au final ne garder qu'un seul LAS coupé en deux. Forcément une telle procédure doit peser sur les performances. Plutôt que de faire une clone, serait-il possible de faire quelque chose comme cela: sub_tile_data = data sub_tile_data.pos, data.pos = data.pos[mask], data.pos[~mask] Ou peut-être qu'il y a une fonction qui fait ça pour le type Data (car data est du type Data). Je suppose que Data est assez proche de numpy, donc peut-être que quelque chose comme cela fonctionne: sub_tile_data.pos = np.delete(mask, data.pos)

_Originally posted by @MichelDaab in https://github.com/IGNF/lidar-deep-segmentation/pull/14#discussion_r870997849_

Je suis d'accord que ça peut être optimisé pour éviter ces copies à répétitions. Tu veux t'en charger ? :)

MichelDaab commented 2 years ago

Tu m'as demandé de faire la code review en cherchant la petite bête, tu ne peux pas te défausser en essayant de me refiler le truc en douce à chaque fois que c'est casse-bonbon, sinon je vais moins chercher la petite bête, forcément

CharlesGaydon commented 2 years ago

Pas de soucis, ce n'étais pas mon intention. Je pense juste que c'était une bonne idée qui mérite d'être envisagée. Ca reste simplement dans le backlog dans ce cas !

CharlesGaydon commented 2 years ago

Corrigé dans https://github.com/IGNF/myria3d/pull/33