initial commit
This commit is contained in:
commit
c40f1e89da
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
**.pyc
|
||||||
|
.*.swo
|
||||||
|
.*.swp
|
||||||
0
__init__.py
Normal file
0
__init__.py
Normal file
88
gant_project.py
Normal file
88
gant_project.py
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
work_packages = [{
|
||||||
|
'title': 'Inclusive Gesture Recognition Models (4 PM)',
|
||||||
|
'duration':9,
|
||||||
|
'start': 0,
|
||||||
|
'method': """
|
||||||
|
Develop an initial gesture recognition baseline using existing datasets (e.g.,
|
||||||
|
$Q, public gesture datasets with diverse motion pattern). Apply unsupervised ML
|
||||||
|
techniques like Dynamic Time Warping (DTW) for feature extraction. Build on
|
||||||
|
these techniques for pretraing supervised ML datasets while identifying biases.
|
||||||
|
Check disparity in model accuracy across participant groups. Assure user studies
|
||||||
|
will be conducted in compliance with GDPR and relevant ethics approvals.
|
||||||
|
""",
|
||||||
|
}, {
|
||||||
|
'title': 'Motor Variability in Interaction',
|
||||||
|
'duration': 7,
|
||||||
|
'start': 6,
|
||||||
|
'method': """
|
||||||
|
Conduct at least 3 mixed-method user studies with ~30 participants across three
|
||||||
|
groups: (1) ageing adults (n≈10), (2) participants with motor
|
||||||
|
impairments/disabilities (n≈10), and (3) expert movers/performers (n≈10). Both
|
||||||
|
quantitative kinematic data (motion capture, wearable sensors) and qualitative
|
||||||
|
data (interviews, observations) will be collected. Motor variability will be
|
||||||
|
modelled using clustering algorithms (e.g., k-means, Gaussian mixture models)
|
||||||
|
and nonlinear statistical analyses to capture individual patterns. Build
|
||||||
|
statistical models to capture variability. The prototype developed in WP1 will
|
||||||
|
serve as the baseline architecture for the user studies in WP2. Fuse statistical
|
||||||
|
insights with supervised ML to allow the system to adapt rather than enforce
|
||||||
|
rigid categories.
|
||||||
|
""",
|
||||||
|
} , {
|
||||||
|
'title': 'Inclusive, Embodied, and Ecofeminist System Refinement',
|
||||||
|
'duration': 5,
|
||||||
|
'start': 14,
|
||||||
|
'method': """
|
||||||
|
"""
|
||||||
|
} , {
|
||||||
|
'title': 'Dissemination and Public Engagement',
|
||||||
|
'start': 10,
|
||||||
|
'duration': 13,
|
||||||
|
'method': """
|
||||||
|
"""
|
||||||
|
}]
|
||||||
|
|
||||||
|
deliverables = [{
|
||||||
|
'title': 'Framework specification',
|
||||||
|
'month': 4,
|
||||||
|
'wp': 1
|
||||||
|
}, {
|
||||||
|
'title': 'Baseline prototype',
|
||||||
|
'month': 8,
|
||||||
|
'wp': 1
|
||||||
|
}, {
|
||||||
|
'title': 'Annotated Dataset',
|
||||||
|
'month': 12,
|
||||||
|
'wp': 2,
|
||||||
|
}, {
|
||||||
|
'title': 'Technical Report on Motor Variability',
|
||||||
|
'month': 13,
|
||||||
|
'wp': 2,
|
||||||
|
}, {
|
||||||
|
'title': 'Updated prototype with integrated supervised ML and explainability mechanisms',
|
||||||
|
'month': 15,
|
||||||
|
'wp': 3,
|
||||||
|
|
||||||
|
}, {
|
||||||
|
'title': 'Design and evaluation framework for inclusive, interpretable ML in movement systems',
|
||||||
|
'month': 18,
|
||||||
|
'wp': 3,
|
||||||
|
}]
|
||||||
|
|
||||||
|
milestones = [{
|
||||||
|
'title': 'Baseline Gesture Model and Bias Evaluation Metrics Defined',
|
||||||
|
'month': 8,
|
||||||
|
'wp': 1,
|
||||||
|
}, {
|
||||||
|
'title': 'Completion of User Studies and Initial Statistical Variability Models',
|
||||||
|
'month': 12,
|
||||||
|
'wp': 2
|
||||||
|
}, {
|
||||||
|
'title': 'Completion of Transparent Model Integration and Ethical Evaluation Setup',
|
||||||
|
'month': 13,
|
||||||
|
'wp': 3
|
||||||
|
}]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
44
main.py
Normal file
44
main.py
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
import sys
|
||||||
|
import pandas as pd
|
||||||
|
import datetime
|
||||||
|
import plotly.express as px
|
||||||
|
from dateutil import relativedelta
|
||||||
|
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
import matplotlib.dates as mdates
|
||||||
|
import matplotlib.patches as mpatches
|
||||||
|
import mplcursors
|
||||||
|
|
||||||
|
from matplotlib import rcParams
|
||||||
|
from matplotlib.widgets import CheckButtons
|
||||||
|
from .settings import (
|
||||||
|
TITLE, TITLE_SIZE, TITLE_FONT_WEIGHT,
|
||||||
|
FONT_FAMILY, FONT_SANS_SERIF, FONT_COLOR,
|
||||||
|
LABEL_SIZE, DAY_FONT_SIZE, MONTH_FONT_SIZE, MONTH_FONT_WEIGHT,
|
||||||
|
X_LABEL, Y_LABEL, BAR_COLOR, TEAM_BAR_COLORS, DATE_FORMAT
|
||||||
|
)
|
||||||
|
from .gant_project import work_packages, deliverables, milestones
|
||||||
|
|
||||||
|
# style confs
|
||||||
|
rcParams['font.family'] = FONT_FAMILY
|
||||||
|
rcParams['font.sans-serif'] = FONT_SANS_SERIF
|
||||||
|
rcParams['axes.titlesize'] = TITLE_SIZE
|
||||||
|
rcParams['axes.labelsize'] = LABEL_SIZE
|
||||||
|
|
||||||
|
start = datetime.datetime.now()
|
||||||
|
|
||||||
|
data_frame = pd.DataFrame(reversed([
|
||||||
|
{
|
||||||
|
'Work Package': f"WP {n+1}",
|
||||||
|
'Label': f"WP {n+1}: {elt['title']}",
|
||||||
|
'start_date': start + relativedelta.relativedelta(months=elt['start']),
|
||||||
|
'end_date': start + \
|
||||||
|
relativedelta.relativedelta(months=elt['start']) + \
|
||||||
|
relativedelta.relativedelta(months=elt['duration']),
|
||||||
|
}
|
||||||
|
for n, elt in enumerate(work_packages)
|
||||||
|
]))
|
||||||
|
fig = px.timeline(data_frame, x_start="start_date", x_end="end_date",
|
||||||
|
y="Work Package", color="Label")
|
||||||
|
fig.update_yaxes(autorange="reversed") # otherwise tasks are listed from the bottom up
|
||||||
|
fig.show()
|
||||||
15
settings.py
Normal file
15
settings.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
TITLE=''
|
||||||
|
TITLE_SIZE='12'
|
||||||
|
TITLE_FONT_WEIGHT=''
|
||||||
|
FONT_FAMILY=''
|
||||||
|
FONT_SANS_SERIF=''
|
||||||
|
FONT_COLOR='#FFFFFF'
|
||||||
|
LABEL_SIZE='12'
|
||||||
|
DAY_FONT_SIZE='12'
|
||||||
|
MONTH_FONT_SIZE=''
|
||||||
|
MONTH_FONT_WEIGHT=''
|
||||||
|
X_LABEL=''
|
||||||
|
Y_LABEL=''
|
||||||
|
BAR_COLOR='#FFFFFF'
|
||||||
|
TEAM_BAR_COLORS='#FFFFFF'
|
||||||
|
DATE_FORMAT=''
|
||||||
Loading…
Reference in New Issue
Block a user