Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| developpement:productions:logiciels:levelsetmethod [2014/12/05 09:48] – cicaluga | developpement:productions:logiciels:levelsetmethod [2014/12/05 10:19] (Version actuelle) – cicaluga | ||
|---|---|---|---|
| Ligne 44: | Ligne 44: | ||
| {{ : | {{ : | ||
| + | * **Program optimization** | ||
| + | **// | ||
| + | |||
| + | The codes were first translate from Python to C++, without major modifications. The python codes use the OpenAlea library whereas the C++ translation use the CImg library. | ||
| + | The computation time was divided by 4.5 from Python to C++ in the LSM detect contour. The amount of memory used was also slightly diminish. | ||
| + | |||
| + | Some part of the code were then optimize by changing the way to loop over images and by removing unnecessary computation. Those modifications divided the computation time by 2.5. We try to implement a narrow-band method but it wasn't conclusive. | ||
| + | |||
| + | For the LSM detect contour, the final C++ code is approximately 11 time faster than the original Python code. It also use thrice as less memory. | ||
| + | |||
| + | **// | ||
| + | |||
| + | The LSM detect contour was parallelized but it wasn't successful, so we keep the sequential version. | ||
| + | |||
| + | The original Python for LSM cell was already parallelized, | ||
| + | |||
| + | * **New features and script** | ||
| + | |||
| + | Several versions were implement in order to : | ||
| + | * change more parameters (LSM cells) | ||
| + | * change the stop criteria (LSM contour) | ||
| + | * initialize with a given contour (LSM contour) | ||
| + | * segment only a list of cells (LSM cells) | ||
| + | * restart at the third step (LSM cells) | ||
| + | |||
| + | <note important> | ||
| + | </ | ||