Loads of changes in the repo structure.
Data are now hosted as a subfolder of the code, and all the source files are grouped into the same package. Bin folder has been removed, scripts are now directly placed in the root location. Main package has been renamed to ivolution, this is a first step towards github renaming and full renaming of the project
6
.gitignore
vendored
@@ -1,6 +1,7 @@
|
||||
*.pyc
|
||||
data/inputs/*
|
||||
data/*.avi
|
||||
ivolution/*.pyc
|
||||
ivolution/data/inputs/*
|
||||
ivolution/data/*.avi
|
||||
build
|
||||
dist
|
||||
MANIFEST
|
||||
@@ -8,5 +9,4 @@ packaging
|
||||
doc/build
|
||||
*~
|
||||
README.rst
|
||||
test.py
|
||||
log
|
||||
|
||||
2
AUTHORS
@@ -1 +1 @@
|
||||
Copyright (C) 2012 <Julien Lengrand-Lambert> <jlengrand@gmail.com>
|
||||
Copyright (C) 2012 <Julien Lengrand-Lambert> <julien@lengrand.fr>
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import os
|
||||
parentdir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
os.sys.path.insert(0,parentdir)
|
||||
|
||||
from gi.repository import Gtk, GObject
|
||||
from gui import IvolutionWindow
|
||||
from ivolution.gui import IvolutionWindow
|
||||
|
||||
|
||||
my_app = IvolutionWindow.IvolutionWindow("Ivolution")
|
||||
@@ -1,9 +1,7 @@
|
||||
recursive-include log *
|
||||
recursive-include bin *
|
||||
recursive-include data/inputs/sample-test *
|
||||
recursive-include data/media *
|
||||
recursive-include data/ui *
|
||||
recursive-include haarcascades *.xml
|
||||
recursive-include docs *
|
||||
include LICENSE
|
||||
include README*
|
||||
include README*
|
||||
include AUTHORS
|
||||
include CHANGES
|
||||
@@ -6,19 +6,13 @@
|
||||
.. moduleauthor:: Julien Lengrand-Lambert <jlengrand@gmail.com>
|
||||
|
||||
"""
|
||||
import os
|
||||
parentdir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
os.sys.path.insert(0,parentdir) # import parent folder
|
||||
|
||||
import sys
|
||||
import threading
|
||||
import time
|
||||
|
||||
#from gui import IvolutionWindow
|
||||
|
||||
import logging
|
||||
|
||||
from facemovie import Facemovie_lib
|
||||
import Facemovie_lib
|
||||
|
||||
class Observer():
|
||||
"""
|
||||
@@ -14,7 +14,7 @@ import logging
|
||||
|
||||
import cv
|
||||
|
||||
from lib import exif
|
||||
from util import exif
|
||||
import Guy
|
||||
|
||||
class FaceMovie(object):
|
||||
0
gui/__init__.py → ivolution/data/haarcascades/__init__.py
Executable file → Normal file
|
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
|
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 134 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 851 B After Width: | Height: | Size: 851 B |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 871 B After Width: | Height: | Size: 871 B |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
@@ -1,6 +1,5 @@
|
||||
from gi.repository import Gtk
|
||||
|
||||
|
||||
class AboutDialog():
|
||||
|
||||
def __init__(self):
|
||||
@@ -10,7 +9,7 @@ class AboutDialog():
|
||||
Returns a fully instantiated AboutDialog object.
|
||||
"""
|
||||
self.builder = Gtk.Builder()
|
||||
self.builder.add_from_file("data/ui/AboutIvolutionDialog.glade")
|
||||
self.builder.add_from_file("ivolution/data/ui/AboutIvolutionDialog.glade")
|
||||
self.window = self.builder.get_object("about_ivolution_dialog")
|
||||
|
||||
self.window.run()
|
||||
@@ -14,9 +14,9 @@ import os
|
||||
parentdir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
os.sys.path.insert(0,parentdir) # import parent folder
|
||||
|
||||
from facemovie import Facemovie_lib
|
||||
from facemovie import FaceParams
|
||||
from facemovie import FacemovieThread
|
||||
import Facemovie_lib
|
||||
import FaceParams
|
||||
import FacemovieThread
|
||||
|
||||
import time
|
||||
|
||||
@@ -29,7 +29,7 @@ class IvolutionWindow(FacemovieThread.Observer, FacemovieThread.Observable):
|
||||
self.console_logger = None
|
||||
|
||||
self.builder = Gtk.Builder()
|
||||
self.builder.add_from_file("data/ui/IvolutionWindow.glade")
|
||||
self.builder.add_from_file("ivolution/data/ui/IvolutionWindow.glade")
|
||||
#self.builder.connect_signals({ "on_ivolutionwindow_destroy" : Gtk.main_quit })
|
||||
self.window = self.builder.get_object("ivolution_window")
|
||||
self.window.show()
|
||||
@@ -161,7 +161,7 @@ class IvolutionWindow(FacemovieThread.Observer, FacemovieThread.Observable):
|
||||
self.speed = self.speedcombobox.get_active() # We need and integer between 0 and 2
|
||||
|
||||
# Instantiating the face_params object that will be needed by the facemovie
|
||||
par_fo = os.path.join(self.root_fo, "haarcascades")
|
||||
par_fo = os.path.join(self.root_fo, "ivolution/data/haarcascades")
|
||||
self.face_params = FaceParams.FaceParams(par_fo,
|
||||
self.in_fo,
|
||||
self.out_fo,
|
||||
0
haarcascades/__init__.py → ivolution/gui/__init__.py
Normal file → Executable file
17
setup.py
@@ -24,7 +24,7 @@ def find_data_files(source,target,patterns):
|
||||
"""
|
||||
if glob.has_magic(source) or glob.has_magic(target):
|
||||
raise ValueError("Magic not allowed in src, target")
|
||||
ret = {}
|
||||
ret = {}l
|
||||
for pattern in patterns:
|
||||
pattern = os.path.join(source,pattern)
|
||||
for filename in glob.glob(pattern):
|
||||
@@ -40,17 +40,23 @@ def read(fname):
|
||||
|
||||
haar_files = find_data_files('facemovie','',['haarcascades/*.xml'])
|
||||
|
||||
setup(...,
|
||||
packages=['mypkg'],
|
||||
package_dir={'mypkg': 'src/mypkg'},
|
||||
package_data={'mypkg': ['data/*.dat']},
|
||||
)
|
||||
|
||||
setup(
|
||||
name = "Facemovie",
|
||||
name = "Ivolution",
|
||||
version = "1.0",
|
||||
author = "Julien Lengrand-Lambert",
|
||||
author_email = "jlengrand@gmail.com",
|
||||
author_email = "julien@lengrand.fr",
|
||||
description = ("Take one picture of yourself a day, automatically generate a movie!"),
|
||||
license = "BSD License",
|
||||
keywords = "image_processing computer_vision one_picture_a_day photography",
|
||||
url = "http://jlengrand.github.com/FaceMovie/",
|
||||
download_url = "http://jlengrand.github.com/FaceMovie/",
|
||||
packages=['facemovie', 'facemovie.lib', 'haarcascades', 'gui'],
|
||||
packages=['facemovie', 'facemovie.lib', 'gui'],
|
||||
long_description=read('README.markdown'),
|
||||
classifiers=[
|
||||
"Development Status :: 3 - Alpha",
|
||||
@@ -62,5 +68,6 @@ setup(
|
||||
"Operating System :: Microsoft",
|
||||
"Programming Language :: Python :: 2 :: Only",
|
||||
],
|
||||
data_files = haar_files,
|
||||
data_files = data_files,
|
||||
scripts=['bin/Ivolution.py']
|
||||
)
|
||||
|
||||