Cartographie primaire des zones potentiellement exposées aux glissements de t...
Démocratisation des images de relevé mobile sur le Web
1. Démocra(sa(on
des
images
de
relevé
mobile
sur
le
Web
Mar%n
Nadeau,
directeur
du
développement,
Intelli3
Laurent
Bourgault-‐Roy,
architecte
du
projet,
Intelli3
2. Plan
présenta(on
1. Qui
suis-‐je?
2. Présenta%on
d’Intelli3
3. Le
projet
1. La
probléma%que
2. La
vision
3. Descrip%on
du
mandat
4. Démonstra%on
5. Architecture
et
les
technologies
6. Bilan
et
conclusion
Intelli3
inc
2/20
4. 1-‐
Intelli3-‐
Qui
est-‐ce?
• Intelli3,
c’est
un
regroupement
d’experts
en
géospa(al.
• Intelli3
,
c’est
une
équipe
qui
possède
une
expérience
unique
de
l’intelligence
d’affaires
combinée
au
géospa%al
depuis
1990.
• Intelli3
,
c’est
une
équipe
qui
sait
transformer
les
concepts
avant-‐gardistes
en
solu%ons
technologiques
innovantes.
N
ATIO E
M
NFOR PATIAL
I OS
GÉ
E
GENCS
LLI
INTEAFFAIRE
D’
T
N
ATIO UE
OV
INNNOLOGIQ
ECH
I3
c’est
la
cohésion
entre
ces
trois
exper%ses.
Intelli3
inc
4/20
5. Développement
informa(que
• Intelli3
offre
des
services
de
développement
et
d’intégra(on
de
solu(ons
web
et
desktop
en
géoma(que,
cartographie
et
intelligence
d’affaires
(ex.
tableaux
de
bord
et
rapports).
• Solu%ons
évolu%ves
et
avant-‐gardistes
• À
l’affut
des
nouvelles
tendances
pour
manipuler
les
grands
volumes
de
données
• Étroite
collabora%on
tout
au
long
du
projet
• Méthode
flexible
et
itéra%ve
Intelli3
inc
5/20
7. La
probléma(que
-‐ Gros
volume
de
données
-‐ Images
-‐ Coordonnées
saisies
-‐ Peu
de
métadonnées
et
pas
d’uniformité
-‐ Ou%l
de
mesures
seulement
«
desktop
»
-‐ Ges%on
par
projet
/
parcours
(pas
de
vision
d’ensemble)
-‐ Structurée
dans
une
arborescence
de
fichiers
-‐ Session
sauvegardée
localement
sur
le
poste
de
travail
-‐ Archivage
des
données
sur
disques
externes
-‐ Peu
de
réu%lisa%on
Démocra(sa(on
des
données
de
relevés
mobiles
Intelli3
inc
7/20
8. Vision
de
la
solu(on
(1)
-‐ Portail
Web
évolu%f
-‐ Possibilité
d’interroger
des
métadonnées
-‐ Filtres
spa%ales,
temporelles
et
descrip%ves
-‐ Possibilité
de
définir
une
région
d’intérêt
sur
une
carte
-‐ Filtre
spa%ale
-‐ Possibilité
de
visualiser
les
données
répondant
aux
critères
de
recherche
sur
une
carte
-‐ Possibilité
de
naviguer
dans
les
images
et
les
parcours
-‐ Possibilité
d’effectuer
des
mesures
sur
les
images
-‐ Point,
ligne,
polygone,
distance
entre
deux
point,
cote,
…
8/20
9. Vision
de
la
solu(on
(2)
-‐ Possibilité
de
commander
des
données
-‐ Relevés
mobiles:
pour
un
secteur,
une
précision,
…
-‐ Des
coordonnées
déjà
saisies
ou
à
saisir
-‐ ex.
les
bornes
fontaines,
les
regards,
…
-‐ Possibilité
de
choisir
le
format
de
téléchargement
-‐ Format,
système
de
coordonnées,
datum
-‐ Possibilité
de
payer
en
ligne
-‐ Ges%on
de
compte
client
et
d’accès
aux
services
-‐ Différents
modes
de
factura%on
-‐ À
l’u%lisa%on
i.e.
au
clic,
selon
l’ou%l
de
mesure,
selon
la
précision
=>
sta%s%ques
de
session
-‐ Prix
fixé
selon
le
volume,
l’historique
client,
…
9/20
10. Mandat
Login/
out
Export
3DPoint
Factura(on
sta(s(ques
au
clic
Factura(on
à
l’usage
Ges(on
session
Affiche
image
Move/
Zoom
Factura(on
à
la
qualité
Commande
relevé
existant
Commande
coordonnées
existantes
Paiement
Factura(on
et
paiement
Ges(on
Caméra
Mesure
2DPoint
Extrait
3DPoint
Affiche
3DPoint
Projet/
Solu(on
Services
applica(fs
Poses
Parcours
Banque
de
données
Ges(onnaire
de
projets/parcours/etc.
Intelli3
inc
10/20
11. Comparaison
architecture
Géoautoma%on
desktop
Fichiers
pose
et
track
Géoautoma%on
Interface
client
Portail
Web
Serveur
d’hébergement
Images
(PGF)
Info
des
projets
PGFtoJPEG
Mise
en
cache
Repository
(JPEG)
Librairie
de
calculs
(C++)
Service
applica%f
Fichiers
pose
et
track
Images
Internet
Interface
client
11/20
13. Contraintes
techniques
-‐
-‐
-‐
-‐
-‐
-‐
-‐
-‐
Intelli3
inc
librairie
de
calculs
en
C++
Image
en
format
.PGF
(Progressive
Graphics
File)
Applica%on
Web
Intégra%on
des
données
dans
une
base
de
données
(PostGIS)
Linux
Langage
standard
:
GWT
Intégra%on
dans
un
portail
plus
complet
à
terme
Besoin
de
fluidité
dans
la
naviga%on
13/20
14. Technologies
u(lisées
SERVEUR
-‐ Langage
u%lisé
Java
-‐ Pont
Java
/
C++
-‐ Protocol
Buffers
(sérialisa%on
binaire)
-‐ JUnixSocket
et
Boost.asio
(socket
unix)
-‐ Base
de
données
PostGIS
-‐
-‐
-‐
-‐
Stockage
des
métadonnées
(poses,
parcours,
projets,
solu%ons)
Requêtes
spa%ales
(proximité,
inclusion,
distance,…)
Export
(format
/
srid)
Connec%on
via
Hibernate
-‐ Jersey
pour
servir
les
images
à
la
volée
-‐ Ubuntu
server
-‐ Jesy
embarqué
(conteneur
de
servlets)
Intelli
inc
3
14/20
15. Technologies
u(lisées
CLIENT
-‐
-‐
-‐
-‐
Langage
u%lisé
Java
/GWT
GWTP
:
framework
MVP
Openlayers
(via
wrapper
GWT-‐Openlayers)
Communica%on
client/serveur
via
GWT-‐RPC
-‐ Format
WKT
pour
les
données
spa%ales
-‐ UIBinder
(créa%on
de
«
widget
»
à
par%r
de
XML)
Intelli3
inc
15/20
16. Boîte
à
ou(ls
-‐ Injec%on
via
Guice
-‐ GIN
pour
GWT
-‐ Tes%ng
-‐ Selenium
-‐ Jukito
(magie!
magie!)
-‐ JUnit
/
Mockito
-‐ U%litaire
-‐
-‐
-‐
-‐
-‐
Intelli3
inc
Guava
/
Guava-‐gwt
(que
tout
développeur
devrait
connaître!)
Joda-‐Time
-‐
Java
date
and
%me
API
(meilleure
ges%on
des
dates)
Apache
commons
Jcommander
Vagrant
pour
configurer
VM
de
développement
16/20
17. Architecture
Fichiers
pose
et
track
Info
des
projets
Repository
Intelli3
inc
Librairie
de
calculs
(C++)
Protocol
Buffers
Services
-‐RPC
Images
(PGF)
PGFtoJPEG
Mise
en
cache
(JPEG)
UIBinder
17/20
18. Bilan
technique
• Compila%on
GWT
lente
versus
refactoring
• Manque
de
librairie
GWT
(ex.
zoom
et
pan
image)
comparé
à
javascript
• Mea
culpa
au
niveau
des
tests
d’accepta%on
18/20
19. Bilan
projet
• Améliora%ons
court
terme:
– Op%misa%on
de
la
cache
– Expérience
u%lisateur
(ex.
caméras,
iden%fica%on
des
points
sur
images,
…)
• Tests
de
migra%on
sur
le
Cloud
(Amazon)
– «
scalabality
»
/
performance
• Développement
du
portail
complet
et
intégra%on
du
projet
dans
celui-‐ci.
19/20
20. Conclusion
• Nouveau
domaine
d’applica%on
• Projet
qui
représentait
de
beaux
défis
• S%mulant
d’intégrer
toutes
sortes
de
nouvelles
technologies
On
collec%onne
les
“i”
chez
Intelli3
i3
c’est
aussi
intégra(on!
C’est
une
équipe
dévouée
et
dynamique
Qui
saura
répondre
à
vos
besoins!
Intelli3
inc
20/20