diff --git a/docs/slides.md b/docs/slides.md
index b6461fa..0baf925 100644
--- a/docs/slides.md
+++ b/docs/slides.md
@@ -20,81 +20,116 @@ title: Bureau d'étude de PI3D
---
-## Exemple Level sets 2D
+## Plan du BE
+
+
-
-- Discrétisation de l'espace
-- Initialisation du volume
-- Mise à jour du volume
-- Résultats
-
-
-
-
-
----
-
-## Discrétisation de l'espace Simplification du problème
-
-
+
-$\mathbb{R}^3 \to \mathbb{V} \newline \implies \mathcal{V} = \{ \textbf{v} = (x, y, z) \in \mathbb{V}, u(\textbf{v}) > 0 \}, \quad u \colon \mathbb{V} \to \{0, 1\}$
+### Binarisation du levelset
+$\mathbb{R}^3 \to \mathbb{V} \newline \implies \mathcal{V} = \{ \textbf{v} = (x, y, z) \in \mathbb{V}, u(\textbf{v}) > 0 \}, \quad u \colon \mathbb{V} \to \{0, 1\}$
Wikipedia
@@ -155,7 +166,8 @@ Et donc t on va aussi le définir égal à 0.
---
-## Initialisation du volume
+## L'algorithme
+### Initialisation du volume
- Définition des bornes de notre grille de voxels:
- $x \in \llbracket x_{\min}, x_{\max} \rrbracket$
@@ -175,6 +187,57 @@ Comme on l'a vu dans les exemple de Faugeras, il nous faut un u_0 initial (le co
---
+## L'algorithme
+### Principe du Shape from Silhouette
+
+
+
+Implementation of a Shadow Carving System for Shape Capture, doi: 10.1109/TDPVT.2002.1024034
+
+
+
+---
+
+### Shape from Silhouette 3D
+
+
+
+
+
+
+
+
+---
+
+## L'algorithme
+### Lancer de rayon (Fast Voxel Intersect)
+
+
+
+
+
+
+
+
+---
+
+### Shape from Silhouette 2D
+
+
+
+
+---
+
## Mise à jour du volume
@@ -191,91 +254,42 @@ Comme on l'a vu dans les exemple de Faugeras, il nous faut un u_0 initial (le co
---
-## Principe du Shape from Silhouette
-
-
-
-Implementation of a Shadow Carving System for Shape Capture, doi: 10.1109/TDPVT.2002.1024034
-
-
-
----
-
-## Shape from Silhouette 3D
-
-
-
-
-
----
-
-## Résultat Shape from Silhouette 3D
-
-
-
-
-
----
-
-## Shape from Silhouette 2D
-
-
-
-
----
-
-## Résultat Shape from Silhouette 2D
-
-
-
----
-
-## Lancer de rayon
-
-
-
----
-
-## Lancer de rayon
-
-
-
----
-
-## Lancer de rayon
-
-
-
----
-
-## Lancer de rayon
-
-
-
----
-
## Itération du Level Set
-
-
+
+
---
-## Résultats (TODO)
+## Résultats
+### L'environnement
-
+
+
+
+
+---
+
+## Résultats
+### Les données
+
+
+
+
+
+
+
+
+
+
+---
+
+## Résultats
+### L'initialisation (Shape from Silhouette)
+
+
---
@@ -286,5 +300,6 @@ nuage de voxel. si nuage de points -> conversion en mesh possible grace aux marc
- Réalisation du SfS en 2D/3D
- Réalisation du MVS par level sets en 2D avec utilisation du SfS
- Résultat en 3D ?
+- Passer en continu au lieu de binaire
diff --git a/src/draw.py b/src/draw.py
index 261ba38..10d51fe 100644
--- a/src/draw.py
+++ b/src/draw.py
@@ -58,7 +58,8 @@ for i in range(nb_cams):
plt.xlim(-7, 7)
plt.ylim(-7, 7)
plt.axis("equal")
-plt.savefig("data/peanut/peanut.png", dpi=300,
+plt.axis("off")
+plt.savefig("data/peanut/peanut_cams.png", dpi=300,
bbox_inches="tight", pad_inches=0, transparent=True)
plt.close()
diff --git a/src/sfs2d.py b/src/sfs2d.py
index a954d2f..aaeeb47 100644
--- a/src/sfs2d.py
+++ b/src/sfs2d.py
@@ -112,6 +112,7 @@ Z = Z.T
plt.figure()
plt.axis("equal")
+plt.axis("off")
plot_voxels(Z, "#fff", 1.0, True)
plot_voxels(voxel, "#00f", 0.5, False)
for i in range(nb_frame):
@@ -233,7 +234,7 @@ for p in range(11):
occurences = [[x, values.count(x)] for x in set(values)]
occurences = sorted(occurences, key=lambda x: x[1], reverse=True)
- if occurences[0][1] >= len(values) * 0.68:
+ if occurences[0][1] >= len(values) * 0.7:
voxel_[i, j] = 1
color = "#0f0"
else:
@@ -258,13 +259,13 @@ for p in range(11):
voxel = voxel_
- plt.savefig(f"evol{p}.png", dpi=300, bbox_inches="tight", pad_inches=0, transparent=True)
+ plt.savefig(f"evol{p:02}.png", dpi=300, bbox_inches="tight", pad_inches=0, transparent=True)
plt.figure()
plt.axis("equal")
plot_voxels(Z, "#fff", 1.0, True)
plot_voxels(voxel, "#00f", 0.5, False)
- plt.savefig(f"shape{p}.png", dpi=300, bbox_inches="tight", pad_inches=0, transparent=True)
+ plt.savefig(f"shape{p:02}.png", dpi=300, bbox_inches="tight", pad_inches=0, transparent=True)
plt.close("all")
# plt.show()