Skip to content
Snippets Groups Projects
Commit 4a1afb41 authored by Hudelot's avatar Hudelot
Browse files

Update jour 3

parent dd2fcff0
Branches master
No related tags found
No related merge requests found
Showing
with 281 additions and 2 deletions
File added
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="TestRunnerService">
<option name="PROJECT_TEST_RUNNER" value="Unittests" />
</component>
</module>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="PyPep8Inspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="W29" />
<option value="E501" />
</list>
</option>
</inspection_tool>
</profile>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.6 (Facerecognition)" project-jdk-type="Python SDK" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/Facerecognition.iml" filepath="$PROJECT_DIR$/.idea/Facerecognition.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="8b276c94-c78f-4160-9bdc-2d5ce663a3c1" name="Default" comment="" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="TRACKING_ENABLED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FileEditorManager">
<leaf>
<file leaf-file-name="test_opencv.py" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/face_recognition/test_opencv.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="296">
<caret line="27" column="8" selection-start-line="27" selection-start-column="8" selection-end-line="27" selection-end-column="8" />
<folding>
<element signature="e#100#137#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Python Script" />
</list>
</option>
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/face_recognition/test_opencv.py" />
</list>
</option>
</component>
<component name="ProjectFrameBounds" extendedState="1">
<option name="x" value="40" />
<option name="y" value="45" />
<option name="width" value="1400" />
<option name="height" value="790" />
</component>
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="Facerecognition" type="b2602c69:ProjectViewProjectNode" />
<item name="Facerecognition" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Facerecognition" type="b2602c69:ProjectViewProjectNode" />
<item name="Facerecognition" type="462c0819:PsiDirectoryNode" />
<item name="face_recognition" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
<pane id="Course" />
</panes>
</component>
<component name="PropertiesComponent">
<property name="last_opened_file_path" value="$USER_HOME$" />
<property name="settings.editor.selected.configurable" value="com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable" />
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="RunManager">
<configuration name="test_opencv" type="PythonConfigurationType" factoryName="Python" temporary="true">
<module name="Facerecognition" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/face_recognition" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/face_recognition/test_opencv.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
</configuration>
<recent_temporary>
<list>
<item itemvalue="Python.test_opencv" />
</list>
</recent_temporary>
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="ToolWindowManager">
<frame x="40" y="45" width="1400" height="790" extended-state="1" />
<editor active="true" />
<layout>
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.24945612" />
<window_info anchor="bottom" id="GitLabIntegration" />
<window_info active="true" anchor="bottom" id="Run" order="2" visible="true" weight="0.32886904" />
<window_info anchor="bottom" id="Version Control" show_stripe_button="false" />
<window_info anchor="bottom" id="Python Console" weight="0.32886904" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
<window_info id="Structure" order="1" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="TODO" order="6" />
</layout>
</component>
<component name="VcsContentAnnotationSettings">
<option name="myLimit" value="2678400000" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/face_recognition/test_opencv.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="296">
<caret line="27" column="8" selection-start-line="27" selection-start-column="8" selection-end-line="27" selection-end-column="8" />
<folding>
<element signature="e#100#137#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
<state key="ScopeChooserConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
</project>
\ No newline at end of file
Facerecognition/Data/tetris_blocks.png

20.3 KiB

from __future__ import print_function
import imutils
import cv2
def load_and_display_image(filename):
image = cv2.imread(filename)
cv2.imshow("Image", image)
cv2.waitKey(0)
return image
def extract_edges(filename):
image = load_and_display_image(filename)
cnts = cv2.findContours(image.copy(), cv2.RETR_EXTERNAL,
cv2.CHAIN_APPROX_SIMPLE)
output = image.copy()
# loop over the contour
for c in cnts:
# draw each contour on the output image with a 3px thick purple
# outline, then display the output contours one at a time
cv2.drawContours(output, [c], -1, (240, 0, 159), 3)
cv2.imshow("Contours", output)
cv2.waitKey(0)
extract_edges("../Data/tetris_blocks.png")
Facerecognition/face_recognition/tetris_blocks.png

20.3 KiB

......@@ -4,3 +4,6 @@
Tout est dit dans le titre !
Appliquez la méthodologie vue jusqu'alors pour developper cette fonctionnalité. Il faudra nous rendre un document avec votre découpage en étapes.
Petite précision. Ici nous n'attendons pas une base de données de type SQL. Il faut reflechir à comment nommer et structurer vos fichiers sur disque pour pouvoir assicier une image à la personne qu'elle représente au moment de l'apprentissage.
# Fonctionnalité 6 : Un Raspberry Pi en ordre de marche pour la reconnaissance visuelle
A ce stade de votre projet vous devriez avoir :
+ Pris en main votre Raspberry
+ Réaliser une chaîne de traitement d'images à l'aide d'une bibliothèque de vision par ordinateur et d'apprentissage.
+ Construit une petite base *structurée* de visage
L'objectif ici est de mettre tout cela en marche ensemble.
## Etape 1 : Reconnaissance de visages sur Raspberry Pi
Vous allez à nouveau suivre ici un tutorial d'A. Rosenbrock qui est [ici](https://www.pyimagesearch.com/2018/06/25/raspberry-pi-face-recognition/).
Pour toutes les applications autour de la vision par ordinateur à base d'OPENCV, le site [https://www.pyimagesearch.com](https://www.pyimagesearch.com) est très intéressant.
Nous vous avons fait utiliser des briques existantes et si vous voulez en savoir plus sur comment fonctionne ces briques et notamment les briques qui utilise de l'apprentissage profond, il y a de très bons cours en ligne comme :
+ Le cours de Stanford [ici](http://cs231n.stanford.edu/)
+ Les activités du site [Fast.ai](https://www.fast.ai/)
Et vous aurez bien entendu un certain nombre de cours dans votre cursus qui vous permettront de comprendre les fondements et de les appliquer de ces disciplines dans le cursus de CentraleSupélec.
Si vous avez fini le tutoriel, vous pouvez maintenant passer à la [**Fonctionnalité 7** : Effectuer une reconnaissance sur une image de votre base et afficher le résultat du traitement.](./Facerecognition_S4_traitement_pi.md)
\ No newline at end of file
# Fonctionnalité 7 : Effectuer une reconnaissance sur une image de votre base et afficher le résultat du traitement
Nous sommes ici très proche d'avoir un premier porduit. L'objectif de cette fonctionnalité est d'intégrer l'ensemble des briques réalisées précedemment pour faire tourner un module de reconnaissance de visages sur un Raspberry pi et le tester et l'evaluer sur votre base et donc avec les élèves de la classe.
**A vous de jouez !**
\ No newline at end of file
......@@ -70,8 +70,8 @@ Ce concept de MVP a été introduit par Eric Ries, l'auteur de [The Lean Startup
### **Objectif 2 : (MVP) Reconnaitre un visage avec un Raspberry Pi** (JOUR 3)
+ **Sprint 4 : Prise en main de votre Raspberry Pi**
+ [**Fonctionnalité 6** : Un Raspberry Pi en ordre de marche pour la reconnaissance visualle](./Facerecognition_S1_displayimage.md)
+ [**Fonctionnalité 2** : Effectuer un traitement sur une image et afficher le résultat du traitement.](./Facerecognition_S1_traitement.md)
+ [**Fonctionnalité 6** : Un Raspberry Pi en ordre de marche pour la reconnaissance visuelle](./Facerecognition_S4_rasp.md)
+ [**Fonctionnalité 7** : Effectuer une reconnaissance sur une image de votre base et afficher le résultat du traitement.](./Facerecognition_S4_traitement_pi.md)
### **Objectif 3 : Ajouter des utilisateurs : reconnaître les visages du groupe projet** (JOUR 4)
**<span style='color:red'>(A venir)</span>**
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment