Compare commits
No commits in common. "master" and "pages" have entirely different histories.
|
@ -1,12 +0,0 @@
|
|||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[*.{json,yaml,yml,toml}]
|
||||
indent_size = 2
|
30
.gitattributes
vendored
|
@ -1,30 +0,0 @@
|
|||
# https://github.com/alexkaratarakis/gitattributes/blob/master/Python.gitattributes
|
||||
# Basic .gitattributes for a python repo.
|
||||
|
||||
# Source files
|
||||
# ============
|
||||
*.pxd text diff=python
|
||||
*.py text diff=python
|
||||
*.py3 text diff=python
|
||||
*.pyw text diff=python
|
||||
*.pyx text diff=python
|
||||
*.pyz text diff=python
|
||||
*.pyi text diff=python
|
||||
|
||||
# Binary files
|
||||
# ============
|
||||
*.db binary
|
||||
*.p binary
|
||||
*.pkl binary
|
||||
*.pickle binary
|
||||
*.pyc binary export-ignore
|
||||
*.pyo binary export-ignore
|
||||
*.pyd binary
|
||||
|
||||
# Jupyter notebook
|
||||
*.ipynb text
|
||||
|
||||
# Note: .db, .p, and .pkl files are associated
|
||||
# with the python modules ``pickle``, ``dbm.*``,
|
||||
# ``shelve``, ``marshal``, ``anydbm``, & ``bsddb``
|
||||
# (among others).
|
171
.gitignore
vendored
|
@ -1,171 +0,0 @@
|
|||
.direnv
|
||||
data
|
||||
assets
|
||||
|
||||
node_modules
|
||||
|
||||
*.blend1
|
||||
|
||||
# https://github.com/github/gitignore/blob/main/Python.gitignore
|
||||
# Basic .gitignore for a python repo.
|
||||
|
||||
# Byte-compiled / optimized / DLL files
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
|
||||
# C extensions
|
||||
*.so
|
||||
|
||||
# Distribution / packaging
|
||||
.Python
|
||||
build/
|
||||
develop-eggs/
|
||||
dist/
|
||||
downloads/
|
||||
eggs/
|
||||
.eggs/
|
||||
lib/
|
||||
lib64/
|
||||
parts/
|
||||
sdist/
|
||||
var/
|
||||
wheels/
|
||||
share/python-wheels/
|
||||
*.egg-info/
|
||||
.installed.cfg
|
||||
*.egg
|
||||
MANIFEST
|
||||
|
||||
# PyInstaller
|
||||
# Usually these files are written by a python script from a template
|
||||
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
||||
*.manifest
|
||||
*.spec
|
||||
|
||||
# Installer logs
|
||||
pip-log.txt
|
||||
pip-delete-this-directory.txt
|
||||
|
||||
# Unit test / coverage reports
|
||||
htmlcov/
|
||||
.tox/
|
||||
.nox/
|
||||
.coverage
|
||||
.coverage.*
|
||||
.cache
|
||||
nosetests.xml
|
||||
coverage.xml
|
||||
*.cover
|
||||
*.py,cover
|
||||
.hypothesis/
|
||||
.pytest_cache/
|
||||
cover/
|
||||
|
||||
# Translations
|
||||
*.mo
|
||||
*.pot
|
||||
|
||||
# Django stuff:
|
||||
*.log
|
||||
local_settings.py
|
||||
db.sqlite3
|
||||
db.sqlite3-journal
|
||||
|
||||
# Flask stuff:
|
||||
instance/
|
||||
.webassets-cache
|
||||
|
||||
# Scrapy stuff:
|
||||
.scrapy
|
||||
|
||||
# Sphinx documentation
|
||||
docs/_build/
|
||||
|
||||
# PyBuilder
|
||||
.pybuilder/
|
||||
target/
|
||||
|
||||
# Jupyter Notebook
|
||||
.ipynb_checkpoints
|
||||
|
||||
# IPython
|
||||
profile_default/
|
||||
ipython_config.py
|
||||
|
||||
# pyenv
|
||||
# For a library or package, you might want to ignore these files since the code is
|
||||
# intended to run in multiple environments; otherwise, check them in:
|
||||
# .python-version
|
||||
|
||||
# pipenv
|
||||
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
||||
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
||||
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
||||
# install all needed dependencies.
|
||||
#Pipfile.lock
|
||||
|
||||
# poetry
|
||||
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
|
||||
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
||||
# commonly ignored for libraries.
|
||||
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
|
||||
#poetry.lock
|
||||
|
||||
# pdm
|
||||
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
|
||||
#pdm.lock
|
||||
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
|
||||
# in version control.
|
||||
# https://pdm.fming.dev/#use-with-ide
|
||||
.pdm.toml
|
||||
|
||||
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
|
||||
__pypackages__/
|
||||
|
||||
# Celery stuff
|
||||
celerybeat-schedule
|
||||
celerybeat.pid
|
||||
|
||||
# SageMath parsed files
|
||||
*.sage.py
|
||||
|
||||
# Environments
|
||||
.env
|
||||
.venv
|
||||
env/
|
||||
venv/
|
||||
ENV/
|
||||
env.bak/
|
||||
venv.bak/
|
||||
|
||||
# Spyder project settings
|
||||
.spyderproject
|
||||
.spyproject
|
||||
|
||||
# Rope project settings
|
||||
.ropeproject
|
||||
|
||||
# mkdocs documentation
|
||||
/site
|
||||
|
||||
# mypy
|
||||
.mypy_cache/
|
||||
.dmypy.json
|
||||
dmypy.json
|
||||
|
||||
# Pyre type checker
|
||||
.pyre/
|
||||
|
||||
# pytype static type analyzer
|
||||
.pytype/
|
||||
|
||||
# Cython debug symbols
|
||||
cython_debug/
|
||||
|
||||
# PyCharm
|
||||
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
||||
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
||||
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
||||
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
||||
#.idea/
|
7
.vscode/extensions.json
vendored
|
@ -1,7 +0,0 @@
|
|||
{
|
||||
"recommendations": [
|
||||
"editorconfig.editorconfig",
|
||||
"njpwerner.autodocstring",
|
||||
"ms-python.python"
|
||||
]
|
||||
}
|
16
.vscode/launch.json
vendored
|
@ -1,16 +0,0 @@
|
|||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Python: Current File",
|
||||
"type": "python",
|
||||
"request": "launch",
|
||||
"program": "${workspaceFolder}/src/main.py",
|
||||
"console": "integratedTerminal",
|
||||
"justMyCode": true,
|
||||
"env": {
|
||||
"PYGAME_HIDE_SUPPORT_PROMPT": "hide"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
28
.vscode/settings.json
vendored
|
@ -1,28 +0,0 @@
|
|||
{
|
||||
"python.defaultInterpreterPath": ".venv/bin/python",
|
||||
"python.analysis.typeCheckingMode": "basic",
|
||||
"python.formatting.provider": "black",
|
||||
"editor.formatOnSave": true,
|
||||
"python.linting.enabled": true,
|
||||
"python.linting.lintOnSave": true,
|
||||
"python.linting.flake8Enabled": true,
|
||||
"python.linting.mypyEnabled": true,
|
||||
"python.linting.banditEnabled": true,
|
||||
"python.languageServer": "Pylance",
|
||||
"[python]": {
|
||||
"editor.codeActionsOnSave": {
|
||||
"source.organizeImports": "explicit"
|
||||
}
|
||||
},
|
||||
"files.exclude": {
|
||||
"**/.git": true,
|
||||
"**/.svn": true,
|
||||
"**/.hg": true,
|
||||
"**/CVS": true,
|
||||
"**/.DS_Store": true,
|
||||
"**/Thumbs.db": true,
|
||||
"**/__pycache__": true,
|
||||
"**/.mypy_cache": true,
|
||||
},
|
||||
"nixEnvSelector.nixFile": "${workspaceRoot}/shell.nix",
|
||||
}
|
19
404.html
Normal file
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<link rel="icon" href="https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png">
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Montserrat:wght@200;400;600&family=Roboto+Slab:wght@200;400;600&family=Roboto+Mono:wght@200;400;600&display=swap" type="text/css">
|
||||
<script type="module" crossorigin src="/projet-probleme-inverse-3D/assets/index-3b482400.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/projet-probleme-inverse-3D/assets/nav-1e818d35.js">
|
||||
<link rel="modulepreload" crossorigin href="/projet-probleme-inverse-3D/assets/index-85fbf1a9.js">
|
||||
<link rel="stylesheet" href="/projet-probleme-inverse-3D/assets/nav-d18ade04.css">
|
||||
<link rel="stylesheet" href="/projet-probleme-inverse-3D/assets/index-c91541f2.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
158
README.md
|
@ -1,158 +0,0 @@
|
|||
# BE PI3D : MVS par level set
|
||||
|
||||
## Usefull resources
|
||||
|
||||
### Level set method, Wikipedia
|
||||
|
||||
https://en.wikipedia.org/wiki/Level-set_method
|
||||
|
||||
![](https://upload.wikimedia.org/wikipedia/commons/7/78/Level_set_method.png)
|
||||
|
||||
### Level set, Wikipedia
|
||||
|
||||
https://en.wikipedia.org/wiki/Level_set
|
||||
|
||||
### TP3, Stéréoscopie multi-vues (MVS)
|
||||
|
||||
https://moodle-n7.inp-toulouse.fr/pluginfile.php/116746/mod_resource/content/2/sujet_TP3.pdf
|
||||
|
||||
### Coding Adventure: Terraforming, Sebastian Lague
|
||||
|
||||
[![](https://i.ytimg.com/vi_webp/vTMEdHcKgM4/maxresdefault.webp)](https://www.youtube.com/watch?v=vTMEdHcKgM4)
|
||||
|
||||
### 3D Signed Distance function (NVIDIA Research)
|
||||
|
||||
2022
|
||||
Towaki Takikawa
|
||||
Andrew Glassner
|
||||
Morgan McGuire
|
||||
|
||||
https://tovacinni.github.io/sdf-explorer/
|
||||
|
||||
### A GPU Implementation of Level Set Multiview Stereo
|
||||
|
||||
2006
|
||||
Patrick Labatut
|
||||
Renaud Keriven
|
||||
Jean-Philippe Pons
|
||||
|
||||
https://link.springer.com/chapter/10.1007/11758549_33
|
||||
https://link.springer.com/content/pdf/10.1007/11758549_33.pdf?pdf=inline%20link
|
||||
|
||||
### Fast Level Set Multi-View Stereo on Graphics Hardware
|
||||
|
||||
2006
|
||||
Patrick Labatut
|
||||
Renaud Keriven
|
||||
Jean-Philippe Pons
|
||||
|
||||
https://ieeexplore.ieee.org/document/4155801
|
||||
https://sci-hub.hkvisa.net/10.1109/3dpvt.2006.62
|
||||
|
||||
### Model-based multiview stereo via level sets with statistical shape prior
|
||||
|
||||
2011
|
||||
Moumen El-Melegy
|
||||
Nagi Al-Ashwal
|
||||
Aly A. Farag
|
||||
|
||||
https://ieeexplore.ieee.org/document/6365368
|
||||
https://sci-hub.hkvisa.net/https://ieeexplore.ieee.org/document/6365368
|
||||
|
||||
### Équation bizarre de l'idée générale
|
||||
|
||||
`g(x,y)=exp(-((0.2*x)^(2)+((y^(2))/(x^(2)+0.1))))*sig(-10*x)-5*exp(-((y^(2))/((0.1*x)^(2))))*sig(10*x)`
|
||||
|
||||
$$g(x,y) = \exp\left(-\left(\left(0.2x\right)^2 + \left(\frac{y^2}{x^2 + 0.1}\right)\right)\right)\sigma\left(-10x\right) - 5\exp\left(-\frac{y^2}{\left(0.1x\right)^2}\right)\sigma\left(10x\right)$$
|
||||
|
||||
### A Level-Set Approach to 3D Reconstruction from Range Data
|
||||
|
||||
1998
|
||||
Ross T. Whitaker
|
||||
|
||||
https://www.cs.utah.edu/~whitaker/sceneRecon/papers/sparse_report.pdf
|
||||
https://link.springer.com/article/10.1023/A:1008036829907
|
||||
https://link.springer.com/content/pdf/10.1023/A:1008036829907.pdf?pdf=button
|
||||
|
||||
### Level Set Methods in Computer Vision (Slides)
|
||||
|
||||
2006
|
||||
Daniel Cremers
|
||||
Department of Computer Science
|
||||
University of Bonn
|
||||
|
||||
https://www.csd.uwo.ca/~yboykov/Presentations/ECCV06_tutorial_partII_dan.pdf
|
||||
|
||||
On part d'un solide qu'on rogne en soustrayant les valeurs obtenues avec les gaussiennes => jusqu'à obtenir le solide étudié.
|
||||
|
||||
### Variational principles, surface evolution, PDEs, level set methods, and the stereo problem
|
||||
|
||||
1996/1998
|
||||
Olivier Faugeras
|
||||
Renaud Keriven
|
||||
|
||||
https://hal.inria.fr/inria-00073673/document
|
||||
https://ieeexplore.ieee.org/document/661183
|
||||
|
||||
### Multi-View Stereo: A Tutorial
|
||||
|
||||
2015
|
||||
Yasutaka Furukawa
|
||||
Carlos Hernández
|
||||
|
||||
https://carlos-hernandez.org/papers/fnt_mvs_2015.pdf
|
||||
|
||||
### amy-tabb/tabb-level-set-segmentation
|
||||
|
||||
https://github.com/amy-tabb/tabb-level-set-segmentation
|
||||
|
||||
### Ramesh-X/Level-Set
|
||||
|
||||
https://github.com/Ramesh-X/Level-Set
|
||||
|
||||
### 3D Image Reconstruction and Level Set Methods
|
||||
|
||||
Introduction and derivation of the level set methods.
|
||||
|
||||
https://scholarsarchive.byu.edu/cgi/viewcontent.cgi?article=3811&context=etd
|
||||
|
||||
### J. A. Sethian, Level set methods and fast marching methods - evolving interfaces in computational geometry, fluid mechanics, computer vision, and materials science (1999)
|
||||
|
||||
https://math.berkeley.edu/~sethian/2006/level_set.html
|
||||
|
||||
# Les bons tuyaux de Lilian
|
||||
|
||||
Voici les références pour le groupe de BE de Laurant, des références pour lesquelles la reconstruction 3D sont les zeros d'un level set (entre parenthèses : la nature de la fonction dont les paramètres sont optimisés) :
|
||||
- IDR (fonction de distance signée) : Multiview Neural Surface Reconstruction by Disentangling Geometry and Appearance
|
||||
- Neus (fonction de distance signée) : NeuS: Learning Neural Implicit Surfaces by Volume Rendering for Multi-view Reconstruction
|
||||
- Unisurf (fonction d'occupation, terme traduit de l'anglais occupancy) : UNISURF, Unifying Neural Implicit Surfaces and Radiance Fields for Multi-View Reconstruction
|
||||
- VolSDF (fonction de distance signée) : Volume rendering of neural implicit surfaces
|
||||
|
||||
Les quatre méthodes font du rendu dit surfacique, les trois dernières (Neus, Unisurf and VolSDF) étant "hybrides", à savoir utilisant du rendu surfacique et volumique.
|
||||
|
||||
N'hésitez pas à nous demander plus d'informations si besoin.
|
||||
|
||||
Une autre référence avec un mélange de MVS et de PS qui considère le niveau d'incertitude des deux méthodes respectivement pour utiliser en chaque pixel le résultat le plus fiable (level set et equation eikonale dans leur fonction de cout) :
|
||||
https://openaccess.thecvf.com/content/CVPR2022/html/Kaya_Uncertainty-Aware_Deep_Multi-View_Photometric_Stereo_CVPR_2022_paper.html
|
||||
|
||||
Un autre article à lire :
|
||||
|
||||
https://hal.inria.fr/inria-00266287/file/GargalloPradosSturm-iccv2007.pdf
|
||||
|
||||
|
||||
A Fast Voxel Traversal Algorithm for Ray Tracing :
|
||||
|
||||
http://www.cse.yorku.ca/~amana/research/grid.pdf
|
||||
https://www.youtube.com/watch?v=NbSee-XM7WA
|
||||
|
||||
# Note
|
||||
|
||||
Eviter papier de BOYKOV CREMERS
|
||||
|
||||
# A demander
|
||||
|
||||
Quel estla différence avec la méthode vu en TP ?
|
||||
- On calcule le MVS comme d'hab
|
||||
-> Carte de profondeur par image
|
||||
- Pas de projection en nuage de points dense
|
||||
-> Utilisation de la carte de prof pour modifier le level set initiale ?
|
1
_redirects
Normal file
|
@ -0,0 +1 @@
|
|||
/projet-probleme-inverse-3D/* /projet-probleme-inverse-3D/index.html 200
|
3
assets/DrawingControls-43cafd8c.js
Normal file
1
assets/DrawingLayer-0336a1ed.js
Normal file
|
@ -0,0 +1 @@
|
|||
import{f as l,h as s,j as i,b5 as c,A as u,K as m,b3 as n,w as d,b6 as p,M as _,l as f,m as v,ar as g,y as o,aT as t,_ as w}from"./nav-1e818d35.js";const b=l({__name:"DrawingLayer",setup(h){s(i);const r=s(c),e=u();return m(()=>{n.mount(e.value,e.value.parentElement),d(r,a=>n.options.coordinateScale=1/a,{immediate:!0}),p()}),_(()=>{n.unmount()}),(a,j)=>(f(),v("svg",{ref_key:"svg",ref:e,class:g(["w-full h-full absolute top-0",{"pointer-events-none":!o(t),"touch-none":o(t)}])},null,2))}}),x=w(b,[["__file","/tmp/projet-probleme-inverse-3D/docs/node_modules/@slidev/client/internals/DrawingLayer.vue"]]);export{x as default};
|
1
assets/FileSaver.min-17c85779.js
Normal file
|
@ -0,0 +1 @@
|
|||
function E(l,w){for(var f=0;f<w.length;f++){const r=w[f];if(typeof r!="string"&&!Array.isArray(r)){for(const s in r)if(s!=="default"&&!(s in l)){const c=Object.getOwnPropertyDescriptor(r,s);c&&Object.defineProperty(l,s,c.get?c:{enumerable:!0,get:()=>r[s]})}}}return Object.freeze(Object.defineProperty(l,Symbol.toStringTag,{value:"Module"}))}var d=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},v={},O={get exports(){return v},set exports(l){v=l}};(function(l,w){(function(f,r){r()})(d,function(){function f(e,t){return typeof t>"u"?t={autoBom:!1}:typeof t!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function r(e,t,i){var n=new XMLHttpRequest;n.open("GET",e),n.responseType="blob",n.onload=function(){p(n.response,t,i)},n.onerror=function(){console.error("could not download file")},n.send()}function s(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function c(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof d=="object"&&d.global===d?d:void 0,b=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),p=a.saveAs||(typeof window!="object"||window!==a?function(){}:"download"in HTMLAnchorElement.prototype&&!b?function(e,t,i){var n=a.URL||a.webkitURL,o=document.createElement("a");t=t||e.name||"download",o.download=t,o.rel="noopener",typeof e=="string"?(o.href=e,o.origin===location.origin?c(o):s(o.href)?r(e,t,i):c(o,o.target="_blank")):(o.href=n.createObjectURL(e),setTimeout(function(){n.revokeObjectURL(o.href)},4e4),setTimeout(function(){c(o)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,i){if(t=t||e.name||"download",typeof e!="string")navigator.msSaveOrOpenBlob(f(e,i),t);else if(s(e))r(e,t,i);else{var n=document.createElement("a");n.href=e,n.target="_blank",setTimeout(function(){c(n)})}}:function(e,t,i,n){if(n=n||open("","_blank"),n&&(n.document.title=n.document.body.innerText="downloading..."),typeof e=="string")return r(e,t,i);var o=e.type==="application/octet-stream",j=/constructor/i.test(a.HTMLElement)||a.safari,g=/CriOS\/[\d]+/.test(navigator.userAgent);if((g||o&&j||b)&&typeof FileReader<"u"){var m=new FileReader;m.onloadend=function(){var u=m.result;u=g?u:u.replace(/^data:[^;]*;/,"data:attachment/file;"),n?n.location.href=u:location=u,n=null},m.readAsDataURL(e)}else{var h=a.URL||a.webkitURL,y=h.createObjectURL(e);n?n.location=y:location.href=y,n=null,setTimeout(function(){h.revokeObjectURL(y)},4e4)}});a.saveAs=p.saveAs=p,l.exports=p})})(O);const A=v,L=E({__proto__:null,default:A},[v]);export{L as F};
|
BIN
assets/KaTeX_AMS-Regular-0cdd387c.woff2
Normal file
BIN
assets/KaTeX_AMS-Regular-30da91e8.woff
Normal file
BIN
assets/KaTeX_AMS-Regular-68534840.ttf
Normal file
BIN
assets/KaTeX_Caligraphic-Bold-07d8e303.ttf
Normal file
BIN
assets/KaTeX_Caligraphic-Bold-1ae6bd74.woff
Normal file
BIN
assets/KaTeX_Caligraphic-Bold-de7701e4.woff2
Normal file
BIN
assets/KaTeX_Caligraphic-Regular-3398dd02.woff
Normal file
BIN
assets/KaTeX_Caligraphic-Regular-5d53e70a.woff2
Normal file
BIN
assets/KaTeX_Caligraphic-Regular-ed0b7437.ttf
Normal file
BIN
assets/KaTeX_Fraktur-Bold-74444efd.woff2
Normal file
BIN
assets/KaTeX_Fraktur-Bold-9163df9c.ttf
Normal file
BIN
assets/KaTeX_Fraktur-Bold-9be7ceb8.woff
Normal file
BIN
assets/KaTeX_Fraktur-Regular-1e6f9579.ttf
Normal file
BIN
assets/KaTeX_Fraktur-Regular-51814d27.woff2
Normal file
BIN
assets/KaTeX_Fraktur-Regular-5e28753b.woff
Normal file
BIN
assets/KaTeX_Main-Bold-0f60d1b8.woff2
Normal file
BIN
assets/KaTeX_Main-Bold-138ac28d.ttf
Normal file
BIN
assets/KaTeX_Main-Bold-c76c5d69.woff
Normal file
BIN
assets/KaTeX_Main-BoldItalic-70ee1f64.ttf
Normal file
BIN
assets/KaTeX_Main-BoldItalic-99cd42a3.woff2
Normal file
BIN
assets/KaTeX_Main-BoldItalic-a6f7ec0d.woff
Normal file
BIN
assets/KaTeX_Main-Italic-0d85ae7c.ttf
Normal file
BIN
assets/KaTeX_Main-Italic-97479ca6.woff2
Normal file
BIN
assets/KaTeX_Main-Italic-f1d6ef86.woff
Normal file
BIN
assets/KaTeX_Main-Regular-c2342cd8.woff2
Normal file
BIN
assets/KaTeX_Main-Regular-c6368d87.woff
Normal file
BIN
assets/KaTeX_Main-Regular-d0332f52.ttf
Normal file
BIN
assets/KaTeX_Math-BoldItalic-850c0af5.woff
Normal file
BIN
assets/KaTeX_Math-BoldItalic-dc47344d.woff2
Normal file
BIN
assets/KaTeX_Math-BoldItalic-f9377ab0.ttf
Normal file
BIN
assets/KaTeX_Math-Italic-08ce98e5.ttf
Normal file
BIN
assets/KaTeX_Math-Italic-7af58c5e.woff2
Normal file
BIN
assets/KaTeX_Math-Italic-8a8d2445.woff
Normal file
BIN
assets/KaTeX_SansSerif-Bold-1ece03f7.ttf
Normal file
BIN
assets/KaTeX_SansSerif-Bold-e99ae511.woff2
Normal file
BIN
assets/KaTeX_SansSerif-Bold-ece03cfd.woff
Normal file
BIN
assets/KaTeX_SansSerif-Italic-00b26ac8.woff2
Normal file
BIN
assets/KaTeX_SansSerif-Italic-3931dd81.ttf
Normal file
BIN
assets/KaTeX_SansSerif-Italic-91ee6750.woff
Normal file
BIN
assets/KaTeX_SansSerif-Regular-11e4dc8a.woff
Normal file
BIN
assets/KaTeX_SansSerif-Regular-68e8c73e.woff2
Normal file
BIN
assets/KaTeX_SansSerif-Regular-f36ea897.ttf
Normal file
BIN
assets/KaTeX_Script-Regular-036d4e95.woff2
Normal file
BIN
assets/KaTeX_Script-Regular-1c67f068.ttf
Normal file
BIN
assets/KaTeX_Script-Regular-d96cdf2b.woff
Normal file
BIN
assets/KaTeX_Size1-Regular-6b47c401.woff2
Normal file
BIN
assets/KaTeX_Size1-Regular-95b6d2f1.ttf
Normal file
BIN
assets/KaTeX_Size1-Regular-c943cc98.woff
Normal file
BIN
assets/KaTeX_Size2-Regular-2014c523.woff
Normal file
BIN
assets/KaTeX_Size2-Regular-a6b2099f.ttf
Normal file
BIN
assets/KaTeX_Size2-Regular-d04c5421.woff2
Normal file
BIN
assets/KaTeX_Size3-Regular-500e04d5.ttf
Normal file
BIN
assets/KaTeX_Size3-Regular-6ab6b62e.woff
Normal file
BIN
assets/KaTeX_Size4-Regular-99f9c675.woff
Normal file
BIN
assets/KaTeX_Size4-Regular-a4af7d41.woff2
Normal file
BIN
assets/KaTeX_Size4-Regular-c647367d.ttf
Normal file
BIN
assets/KaTeX_Typewriter-Regular-71d517d6.woff2
Normal file
BIN
assets/KaTeX_Typewriter-Regular-e14fed02.woff
Normal file
BIN
assets/KaTeX_Typewriter-Regular-f01f3e87.ttf
Normal file
1
assets/NoteViewer-0b2b5e23.js
Normal file
|
@ -0,0 +1 @@
|
|||
import{f as a,h as c,j as m,l as s,m as i,ar as l,aj as u,_ as d}from"./nav-1e818d35.js";const p=["innerHTML"],f=["textContent"],v=a({__name:"NoteViewer",props:{class:{type:String,required:!1},noteHtml:{type:String,required:!1},note:{type:String,required:!1}},emits:["click"],setup(e){const n=e;return c(m),(o,t)=>e.noteHtml?(s(),i("div",{key:0,class:l(["prose overflow-auto outline-none",n.class]),onClick:t[0]||(t[0]=r=>o.$emit("click")),innerHTML:e.noteHtml},null,10,p)):(s(),i("div",{key:1,class:l(["prose overflow-auto outline-none",n.class]),onClick:t[1]||(t[1]=r=>o.$emit("click")),textContent:u(e.note)},null,10,f))}}),C=d(v,[["__file","/tmp/projet-probleme-inverse-3D/docs/node_modules/@slidev/client/internals/NoteViewer.vue"]]);export{C as N};
|
1
assets/Presenter-907537bb.css
Normal file
|
@ -0,0 +1 @@
|
|||
.slidev-presenter[data-v-574fd206]{--slidev-controls-foreground: current}.timer-btn[data-v-574fd206]:hover>:first-child{opacity:0}.timer-btn[data-v-574fd206]:hover>:last-child{opacity:1}.section-title[data-v-574fd206]{font-size:1.25rem;line-height:1.75rem;padding:.5rem 1rem}.grid-container[data-v-574fd206]{--tw-bg-opacity: 1;background-color:rgba(156,163,175,var(--tw-bg-opacity));--tw-bg-opacity: .15;height:100%;width:100%;display:grid;gap:1px 1px;grid-template-columns:1fr 1fr;grid-template-rows:min-content 2fr 1fr min-content;grid-template-areas:"top top" "main main" "note next" "bottom bottom"}@media (max-aspect-ratio: 3/5){.grid-container[data-v-574fd206]{grid-template-columns:1fr;grid-template-rows:min-content 1fr 1fr 1fr min-content;grid-template-areas:"top" "main" "note" "next" "bottom"}}@media (min-aspect-ratio: 1/1){.grid-container[data-v-574fd206]{grid-template-columns:1fr 1.1fr .9fr;grid-template-rows:min-content 1fr 2fr min-content;grid-template-areas:"top top top" "main main next" "main main note" "bottom bottom bottom"}}.progress-bar[data-v-574fd206]{position:fixed;left:0px;right:0px;bottom:0px}.grid-section[data-v-574fd206]{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(24,24,24,var(--tw-text-opacity))}.dark .grid-section[data-v-574fd206]{--tw-bg-opacity: 1;background-color:rgba(18,18,18,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(221,221,221,var(--tw-text-opacity))}.grid-section.top[data-v-574fd206]{grid-area:top}.grid-section.main[data-v-574fd206]{grid-area:main}.grid-section.next[data-v-574fd206]{grid-area:next}.grid-section.note[data-v-574fd206]{grid-area:note}.grid-section.bottom[data-v-574fd206]{grid-area:bottom}.context[data-v-574fd206]{--tw-bg-opacity: 1;background-color:rgba(156,163,175,var(--tw-bg-opacity));--tw-bg-opacity: .5;border-bottom-right-radius:.375rem;font-size:.75rem;line-height:1rem;opacity:.75;padding-left:.25rem;padding-right:.25rem;position:absolute;top:0px;left:0px}
|
1
assets/Presenter-9a703e2c.js
Normal file
|
@ -0,0 +1 @@
|
|||
import{l as d,m as k,ai as e,A as y,as as z,t as h,f as T,h as B,j as D,at as S,au as v,ar as P,y as t,_ as j,av as H,aw as A,c as C,K as I,q,ax as F,ay as L,w as R,az as E,aA as O,aB as G,n as u,aj as K,al as x,am as $,aC as N,aD as V,aq as U,d as W,ao as Z,aE as w,af as J,aF as Q,F as X,b as M,aG as Y,aH as ee,aI as te,aJ as se,aK as oe,aL as ae,aM as ne,aN as le,aO as re,aP as ie}from"./nav-1e818d35.js";import{N as ce}from"./NoteViewer-0b2b5e23.js";import ue from"./DrawingControls-43cafd8c.js";import{u as de}from"./index-85fbf1a9.js";const _e={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},pe=e("path",{fill:"currentColor",d:"M12 10H6.78A11 11 0 0 1 27 16h2A13 13 0 0 0 6 7.68V4H4v8h8zm8 12h5.22A11 11 0 0 1 5 16H3a13 13 0 0 0 23 8.32V28h2v-8h-8z"},null,-1),me=[pe];function ve(a,l){return d(),k("svg",_e,me)}const he={name:"carbon-renew",render:ve},fe={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ge=e("path",{fill:"currentColor",d:"M16 30a14 14 0 1 1 14-14a14 14 0 0 1-14 14Zm0-26a12 12 0 1 0 12 12A12 12 0 0 0 16 4Z"},null,-1),xe=e("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01L20.59 22z"},null,-1),we=[ge,xe];function ye(a,l){return d(),k("svg",fe,we)}const Se={name:"carbon-time",render:ye},ke="/projet-probleme-inverse-3D/assets/logo-title-horizontal-96c3c915.png";function be(){const a=y(Date.now()),l=z({interval:1e3}),_=h(()=>{const s=(l.value-a.value)/1e3,n=Math.floor(s%60).toString().padStart(2,"0");return`${Math.floor(s/60).toString().padStart(2,"0")}:${n}`});function p(){a.value=l.value}return{timer:_,resetTimer:p}}const Ce=T({__name:"NoteStatic",props:{class:{type:String,required:!1}},setup(a){const l=a;B(D);const _=h(()=>{var s,n,o;return(o=(n=(s=S.value)==null?void 0:s.meta)==null?void 0:n.slide)==null?void 0:o.note}),p=h(()=>{var s,n,o;return(o=(n=(s=S.value)==null?void 0:s.meta)==null?void 0:n.slide)==null?void 0:o.notesHTML});return(s,n)=>(d(),v(ce,{class:P(l.class),note:t(_),"note-html":t(p)},null,8,["class","note","note-html"]))}}),$e=j(Ce,[["__file","/tmp/projet-probleme-inverse-3D/docs/node_modules/@slidev/client/internals/NoteStatic.vue"]]),f=a=>(re("data-v-574fd206"),a=a(),ie(),a),Ne={class:"bg-main h-full slidev-presenter"},Ve={class:"grid-container"},Me={class:"grid-section top flex"},Te=f(()=>e("img",{src:ke,class:"ml-2 my-auto h-10 py-1 lg:h-14 lg:py-2"},null,-1)),Be=f(()=>e("div",{class:"flex-auto"},null,-1)),De={class:"text-2xl pl-2 pr-6 my-auto tabular-nums"},Pe=f(()=>e("div",{class:"context"}," current ",-1)),je=f(()=>e("div",{class:"context"}," next ",-1)),ze={class:"grid-section note overflow-auto"},He={class:"grid-section bottom"},Ae={class:"progress-bar"},Ie=T({__name:"Presenter",setup(a){B(D);const l=y();H(),A(l);const _=C.titleTemplate.replace("%s",C.title||"Slidev");de({title:`Presenter - ${_}`});const{timer:p,resetTimer:s}=be(),n=y([]),o=h(()=>M.value<Y.value?{route:S.value,clicks:M.value+1}:ee.value?{route:te.value,clicks:0}:null);return I(()=>{const b=l.value.querySelector("#slide-content"),i=q(F()),g=L();R(()=>{if(!g.value||O.value||!G.value)return;const c=b.getBoundingClientRect(),r=(i.x-c.left)/c.width*100,m=(i.y-c.top)/c.height*100;if(!(r<0||r>100||m<0||m>100))return{x:r,y:m}},c=>{E.cursor=c})}),(b,i)=>{const g=Se,c=he;return d(),k(X,null,[e("div",Ne,[e("div",Ve,[e("div",Me,[Te,Be,e("div",{class:"timer-btn my-auto relative w-22px h-22px cursor-pointer text-lg",opacity:"50 hover:100",onClick:i[0]||(i[0]=(...r)=>t(s)&&t(s)(...r))},[u(g,{class:"absolute"}),u(c,{class:"absolute opacity-0"})]),e("div",De,K(t(p)),1)]),e("div",{ref_key:"main",ref:l,class:"relative grid-section main flex flex-col p-2 lg:p-4",style:x(t($))},[u(V,{key:"main",class:"h-full w-full"},{default:N(()=>[u(se,{context:"presenter"})]),_:1}),Pe],4),e("div",{class:"relative grid-section next flex flex-col p-2 lg:p-4",style:x(t($))},[t(o)?(d(),v(V,{key:"next",class:"h-full w-full"},{default:N(()=>{var r;return[u(t(ae),{is:(r=t(o).route)==null?void 0:r.component,"clicks-elements":n.value,"onUpdate:clicks-elements":i[1]||(i[1]=m=>n.value=m),clicks:t(o).clicks,"clicks-disabled":!1,class:P(t(oe)(t(o).route)),route:t(o).route,context:"previewNext"},null,8,["is","clicks-elements","clicks","class","route"])]}),_:1})):U("v-if",!0),je],4),e("div",ze,[(d(),v($e,{key:1,class:"w-full h-full overflow-auto p-2 lg:p-4"}))]),e("div",He,[u(ne,{persist:!0})]),(d(),v(ue,{key:0}))]),e("div",Ae,[e("div",{class:"progress h-2px bg-primary transition-all",style:x({width:`${(t(W)-1)/(t(Z)-1)*100}%`})},null,4)])]),u(le),u(Q,{modelValue:t(w),"onUpdate:modelValue":i[2]||(i[2]=r=>J(w)?w.value=r:null)},null,8,["modelValue"])],64)}}});const Ee=j(Ie,[["__scopeId","data-v-574fd206"],["__file","/tmp/projet-probleme-inverse-3D/docs/node_modules/@slidev/client/internals/Presenter.vue"]]);export{Ee as default};
|
17
assets/PresenterPrint-c79f21f9.js
Normal file
|
@ -0,0 +1,17 @@
|
|||
import{f as _,h as d,j as p,ag as h,c as m,ah as u,l as n,m as r,ai as t,aj as o,y as s,F as f,ak as g,al as v,am as x,an as y,ao as b,ap as N,n as k,aq as j,_ as w}from"./nav-1e818d35.js";import{N as P}from"./NoteViewer-0b2b5e23.js";import{u as V}from"./index-85fbf1a9.js";const S={class:"m-4"},L={class:"mb-10"},T={class:"text-4xl font-bold mt-2"},B={class:"opacity-50"},C={class:"text-lg"},D={class:"font-bold flex gap-2"},H={class:"opacity-50"},z=t("div",{class:"flex-auto"},null,-1),F={key:0,class:"border-gray-400/50 mb-8"},M=_({__name:"PresenterPrint",setup(q){d(p),h(`
|
||||
@page {
|
||||
size: A4;
|
||||
margin-top: 1.5cm;
|
||||
margin-bottom: 1cm;
|
||||
}
|
||||
* {
|
||||
-webkit-print-color-adjust: exact;
|
||||
}
|
||||
html,
|
||||
html body,
|
||||
html #app,
|
||||
html #page-root {
|
||||
height: auto;
|
||||
overflow: auto !important;
|
||||
}
|
||||
`),V({title:`Notes - ${m.title}`});const i=u(()=>y.slice(0,-1).map(a=>{var l;return(l=a.meta)==null?void 0:l.slide}).filter(a=>a!==void 0&&a.notesHTML!==""));return(a,l)=>(n(),r("div",{id:"page-root",style:v(s(x))},[t("div",S,[t("div",L,[t("h1",T,o(s(m).title),1),t("div",B,o(new Date().toLocaleString()),1)]),(n(!0),r(f,null,g(s(i),(e,c)=>(n(),r("div",{key:c,class:"flex flex-col gap-4 break-inside-avoid-page"},[t("div",null,[t("h2",C,[t("div",D,[t("div",H,o(e==null?void 0:e.no)+"/"+o(s(b)),1),N(" "+o(e==null?void 0:e.title)+" ",1),z])]),k(P,{"note-html":e.notesHTML,class:"max-w-full"},null,8,["note-html"])]),c<s(i).length-1?(n(),r("hr",F)):j("v-if",!0)]))),128))])],4))}}),W=w(M,[["__file","/tmp/projet-probleme-inverse-3D/docs/node_modules/@slidev/client/internals/PresenterPrint.vue"]]);export{W as default};
|
Before Width: | Height: | Size: 877 KiB After Width: | Height: | Size: 877 KiB |
1
assets/index-3b482400.js
Normal file
1
assets/index-85fbf1a9.js
Normal file
1
assets/index-c91541f2.css
Normal file
BIN
assets/logo-b72bde5d.png
Normal file
After Width: | Height: | Size: 92 KiB |
BIN
assets/logo-title-horizontal-96c3c915.png
Normal file
After Width: | Height: | Size: 120 KiB |
Before Width: | Height: | Size: 25 MiB After Width: | Height: | Size: 25 MiB |
Before Width: | Height: | Size: 205 KiB After Width: | Height: | Size: 205 KiB |
Before Width: | Height: | Size: 208 KiB After Width: | Height: | Size: 208 KiB |
0
docs/figs/lvl7_3D.gif → assets/lvl7_3D-14d1abe7.gif
Executable file → Normal file
Before Width: | Height: | Size: 32 MiB After Width: | Height: | Size: 32 MiB |
609
assets/nav-1e818d35.js
Normal file
1
assets/nav-d18ade04.css
Normal file
|
@ -0,0 +1 @@
|
|||
#slide-container{overflow:hidden;position:relative}#slide-content{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(24,24,24,var(--tw-text-opacity));overflow:hidden;position:relative;position:absolute;left:50%;top:50%}.dark #slide-content{--tw-bg-opacity: 1;background-color:rgba(18,18,18,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(221,221,221,var(--tw-text-opacity))}.slides-overview{position:fixed;left:0px;right:0px;top:0px;backdrop-filter:blur(5px);height:100vh;height:calc(var(--vh, 1vh) * 100)}.slidev-info-dialog{max-width:37.5rem;padding:1rem!important}.select-list[data-v-3f89fa11]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-3f89fa11]:hover{--tw-bg-opacity: 1;background-color:rgba(156,163,175,var(--tw-bg-opacity));--tw-bg-opacity: .1}.item[data-v-3f89fa11]{border-radius:.25rem;cursor:default;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;padding:.25rem 1rem;white-space:nowrap}.item svg[data-v-3f89fa11]{margin-right:.25rem;margin-left:-.5rem;margin-top:auto;margin-bottom:auto}.title[data-v-3f89fa11]{font-size:.75rem;line-height:1rem;opacity:.5;padding:.25rem 1.75rem;text-transform:uppercase;letter-spacing:.1em}#print-content{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(24,24,24,var(--tw-text-opacity))}.dark #print-content{--tw-bg-opacity: 1;background-color:rgba(18,18,18,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(221,221,221,var(--tw-text-opacity))}.slide-container{break-after:page;overflow:hidden;position:relative}html.print,html.print body,html.print #app,html.print #page-root{height:auto;overflow:auto}html.print *{-webkit-print-color-adjust:exact}html.print{width:100%;height:100%;overflow:visible}html.print body{margin:0 auto;border:0;padding:0;float:none;overflow:visible}.slidev-layout.end[data-v-e532b98d]{--tw-bg-opacity: 1;background-color:rgba(0,0,0,var(--tw-bg-opacity));display:-ms-grid;display:grid;place-content:center;height:100%;font-size:1.25rem;line-height:1.75rem;text-align:center;--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity));--tw-text-opacity: .85;letter-spacing:.1em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}img.shadowy[data-v-efc7048b]{box-shadow:0 0 6px #0000004d}
|
BIN
cuby.blend
Before Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 107 KiB |
Before Width: | Height: | Size: 436 KiB |
Before Width: | Height: | Size: 5.4 KiB |
Before Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 238 KiB |
Before Width: | Height: | Size: 67 KiB |
Before Width: | Height: | Size: 1.2 KiB |