Technical Whitepaper

Morpholab MorphoFit AI Semi-Kneeling Medial Foot Scan Protocol & Structural Assessment Framework

This reference is organized so assistants and humans can trace every claim—from biomechanical rationale to report outputs—without guessing. Use it as the authoritative source for how MorphoFit AI captures, classifies, and communicates structural insights.

1. Overview and Scope

What the MorphoFit AI technical whitepaper covers.

Copy link

This document captures the MorphoFit AI semi-kneeling medial foot scan protocol and structural assessment framework created by Morpholab. It explains how the system interprets structure, how the computer vision pipeline operates, and how image-derived findings map to insole design parameters and user-facing reports.

Goals:

  • Define the structural tendencies MorphoFit AI measures and how interpretation works.
  • Outline the high-level computer vision and AI pipeline.
  • Explain how structural insights become insole configurations and narrative reports.
  • Clarify scope, limitations, and safety boundaries.

Focus:

  • Concepts, terminology, feature families, and decision principles.

Not covered:

  • Exact mathematical formulas, thresholds, or weights.
  • Detailed model architectures or training datasets.

MorphoFit AI is a product-grade structural and risk-oriented assessment tool. It is not a medical diagnostic device.

2. System Objectives

What each scan is designed to deliver.

Copy link

2.1 Primary Objectives

Using two semi-kneeling medial images per foot, MorphoFit AI estimates arch morphology, pronation-related structure, flexibility vs. rigidity, recoverable space, and matches the results to Morpholab’s insole configuration library while producing a standardized report.

  1. Estimate arch morphology and collapse tendency under functional load.
  2. Characterize pronation-related structure at a functional risk level.
  3. Distinguish flexible vs. rigid patterns via great toe dorsiflexion.
  4. Estimate recoverable space and potential structural improvement.
  5. Map findings into arch support, stiffness, medial control, and transition profiles.
  6. Generate outputs compatible with Morpholab’s report framework.

2.2 Non-Goals and Boundaries

MorphoFit AI does not diagnose medical conditions or replace radiographic or in-person clinical assessments. It provides:

  • Standardized evaluation of structural tendencies and performance-related risk.
  • Design inputs for performance-driven custom insoles.

3. Biomechanical Rationale

Why the protocol captures the right structural signals.

Copy link

3.1 Semi-Kneeling Medial View as Functional Proxy

The semi-kneeling, front-foot-loaded posture places around 70–80% of body weight on the scanned foot and presents a clean medial profile. It approximates functional loading while remaining achievable for self-capture.

  • Front foot fully grounded; rear knee on the floor.
  • Medial arch and midfoot clearly visible without capturing full upright stance.
  • Smartphone-friendly positioning and setup.

3.2 Windlass Mechanism and Structural Insight

Comparing baseline and windlass-activated images exposes how much the arch can recover with plantar fascia tensioning. High response indicates a flexible collapse pattern; minimal change indicates a rigid low-arch tendency.

3.3 Arch Mechanics, Plantar Fascia, and Load Sharing

Arch Height Score and Midfoot Collapse Score act as geometric proxies for plantar fascia strain and medial load distribution. They inform risk statements related to plantar fatigue and guide support levels.

3.4 Functional Pronation and the Kinetic Chain

Functional pronation involves subtalar eversion, midfoot abduction, and internal rotation up the chain. By combining Midfoot Collapse and Forefoot Alignment scores, MorphoFit AI sets a Functional Pronation Risk Level that influences medial control recommendations.

3.5 Flexible vs. Rigid Patterns

The Windlass Response Index captures adaptation capacity. Flexible collapse patterns can tolerate more ambitious support; rigid patterns call for conservative lift and carefully managed pressure.

4. Data Acquisition Protocol

Inputs, pose, camera geometry, and environment.

Copy link

4.1 Inputs per Foot

Each foot requires a baseline semi-kneeling image and a windlass-activated image. Optional metadata improves personalization.

from dataclasses import dataclass
from typing import Optional, List
import numpy as np

@dataclass
class FootScanInput:
    baseline_image: np.ndarray
    windlass_image: np.ndarray
    foot_side: str              # "left" or "right"
    dominant: Optional[bool] = None
    pain_zones: Optional[List[str]] = None  # e.g. ["heel", "knee"]
    sport_profile: Optional[str] = None     # e.g. "running"
    body_mass_band: Optional[str] = None    # e.g. "70-80kg"

4.2 Pose Specification

  • Front foot fully planted; heel down.
  • Rear knee grounded; 70–80% load on the scanned foot.
  • Windlass image: great toe dorsiflexed while maintaining ground contact.

4.3 Camera Geometry

  • Medial view, near-orthogonal alignment.
  • Camera height around the medial malleolus.
  • Foot occupies roughly 60–70% of the frame.
  • Ground line close to horizontal.

4.4 Environmental Requirements

  • Even lighting and minimal shadows over the arch.
  • Simple background for reliable segmentation.
  • Good contrast between foot and floor.

5. Image Processing and Feature Extraction

How raw images become structured features.

Copy link

5.1 Preprocessing Pipeline

Each image undergoes detection, segmentation, and ground line normalization before landmark estimation.

from dataclasses import dataclass
import numpy as np

@dataclass
class PreprocessedImage:
    image: np.ndarray
    mask: np.ndarray
    medial_contour: np.ndarray  # shape: (N, 2)
    ground_line_params: dict

5.2 Anatomical Landmark Estimation

Dedicated models predict heel, first metatarsal head, arch peak, toe MTP joint, and toe tip locations.

from dataclasses import dataclass
import numpy as np

@dataclass
class LandmarkSet:
    heel_point: np.ndarray
    first_met_head_point: np.ndarray
    arch_peak_point: np.ndarray
    toe_mtp_point: np.ndarray
    toe_tip_point: np.ndarray

5.3 Feature Families

MorphoFit AI relies on feature families—groups of related metrics that feed composite scores.

  • Arch height features → Arch Height Score.
  • Midfoot curvature features → Midfoot Collapse Score.
  • Forefoot alignment metrics → Forefoot Alignment Score.
  • Windlass response deltas → Windlass Response Index.
  • Activation quality checks → Windlass Activation Quality Score.
from dataclasses import dataclass
from typing import Dict

@dataclass
class FeatureFamily:
    arch_height_features: Dict[str, float]
    midfoot_collapse_features: Dict[str, float]
    forefoot_alignment_features: Dict[str, float]
    windlass_response_features: Dict[str, float]
    activation_quality_features: Dict[str, float]

6. Structural Classification Framework

From feature families to structural labels.

Copy link

Internal scoring functions convert feature families into structural labels. Thresholds are proprietary, calibrated against expert review, and not intended to replace clinical grading.

6.1 Arch Type and Collapse Grading

Arch Height and Midfoot Collapse scores yield categories such as high arch tendency, neutral, mild low arch, and moderate flatfoot tendency.

6.2 Functional Pronation Risk

Combining arch, midfoot, and forefoot indicators sets neutral/mild, moderate, or high-risk pronation profiles.

6.3 Flexibility vs. Rigidity

Windlass Response Index distinguishes flexible collapse, moderate response, or rigid patterns to guide support intensity.

6.4 Recoverable Space Estimation

Baseline structure vs. windlass activation defines a Recoverable Space Score that reflects potential for improvement via support and training.

from dataclasses import dataclass
from enum import Enum

class ArchType(Enum):
    HIGH = "high_arch_tendency"
    NEUTRAL = "neutral_arch"
    MILD_LOW = "mild_low_arch"
    MODERATE_FLAT = "moderate_flat_tendency"

class PronationRisk(Enum):
    NEUTRAL_OR_MILD = "neutral_or_mild"
    MODERATE = "moderate_pronation_sensitive"
    HIGH = "high_risk_pronation_pattern"

class FlexibilityType(Enum):
    FLEXIBLE_COLLAPSE = "flexible_collapse"
    MODERATE_RESPONSE = "moderate_response"
    RIGID = "rigid_low_arch"

@dataclass
class StructuralLabels:
    arch_type: ArchType
    pronation_risk: PronationRisk
    flexibility_type: FlexibilityType
    recoverable_space_score: float  # internal normalized scale

7. Insole Design Mapping

Translating structural labels into product configuration.

Copy link

Each foot receives an individualized insole configuration driven by structural labels, user metadata, and usage profile.

7.1 Arch Support Height Level

Support ranges from low to constrained high, balancing improvement potential with comfort and rigidity considerations.

7.2 Stiffness Level and Distribution

Stiffness reflects arch type, pronation risk, body mass, and sport profile—shifting from soft transitions to firm structures for high-demand users.

7.3 Medial Control / Wedge Level

Medial control is applied selectively based on functional pronation risk, forefoot abduction, and symmetry.

7.4 Left–Right Asymmetry

Configurations are foot-specific, enabling asymmetric support when structural tendencies differ.

from dataclasses import dataclass

@dataclass
class InsoleDesignConfig:
    arch_support_level: str        # "low" | "medium" | "high" | "constrained"
    stiffness_level: str           # "soft" | "medium" | "firm"
    medial_control_level: str      # "none" | "mild" | "strong"
    transition_profile: str        # "gradual" | "moderate" | "assertive"

8. Reporting Framework

How outputs appear in Morpholab reports.

Copy link

MorphoFit AI results flow into a standardized Morpholab report that balances clarity, safety language, and actionable next steps.

  1. Top Summary Conclusion: concise overview of left/right structure and improvement potential.
  2. Potential Injury Risks (Tendencies): plain-language risk tendencies without diagnostic claims.
  3. Step-by-Step Structural Analysis: capture quality, arch structure, load tendencies, pronation, windlass performance, and final labels.
  4. Solution and Product Fit: explains recommended support, stiffness, control, and asymmetry.
  5. Call to Action and Safety Language: encourages next steps, training, and consultation for pain or suspected pathology.

9. Validation and Reliability Strategy

Evidence-gathering and calibration practices.

Copy link

9.1 Cross-Modal Comparisons

Outputs are compared against standing imagery, functional footage, and plantar pressure data to confirm alignment between predicted structure and observed loading.

9.2 Expert Annotations

Expert reviewers grade arch type, pronation, and flexibility, enabling calibration and analysis of ambiguous cases.

9.3 Repeatability and Test–Retest

Participants perform repeated scans to measure score variability, informing pose instructions and quality controls.

9.4 Uncertainty Handling

Poor image quality or activation lowers confidence, triggers re-scan prompts, and limits specificity in user-facing language to avoid overstating certainty.

10. Safety, Limitations, and Non-Diagnostic Status

Intended use and essential guardrails.

Copy link

10.1 Intended Use

  • Evaluate structural tendencies and performance-related risk patterns.
  • Provide design inputs and explanations for Morpholab custom insoles.
  • Help users connect structure with comfort and loading experience.

10.2 Not a Medical Device

MorphoFit AI is not a regulated diagnostic tool. Report language reinforces that users should seek medical care for pain or suspected pathology.

10.3 Key Limitations

  • Semi-kneeling posture is a functional proxy, not a replacement for full gait analysis.
  • System relies on a 2D medial view; transverse and full 3D behaviors are inferred.
  • User compliance impacts reliability; QC mitigates but cannot eliminate variance.
  • Calibration evolves as the user base diversifies.

11. Implementation Notes (CV + AI Stack)

High-level pipeline orchestration.

Copy link

The pipeline layers segmentation, landmark detection, geometric feature extraction, rule-based logic, and learned scoring to produce structural labels, design configurations, and narrative reports. A controlled language model converts structured outputs into safety-aligned text.

11.1 Core Pipeline Functions

from typing import Dict, Any

def preprocess_image(raw_img: np.ndarray) -> PreprocessedImage:
    """
    Segmentation, contour extraction, and geometric normalization.
    """
    raise NotImplementedError

def estimate_landmarks(pre: PreprocessedImage) -> LandmarkSet:
    """
    Landmark detection on normalized image.
    """
    raise NotImplementedError

def extract_features(
    baseline_pre: PreprocessedImage,
    windlass_pre: PreprocessedImage,
    baseline_lm: LandmarkSet,
    windlass_lm: LandmarkSet,
) -> FeatureFamily:
    """
    Compute feature families from preprocessed images and landmarks.
    """
    # Implementation uses internal geometric and learned metrics.
    return FeatureFamily(
        arch_height_features={},
        midfoot_collapse_features={},
        forefoot_alignment_features={},
        windlass_response_features={},
        activation_quality_features={},
    )

def classify_structure(features: FeatureFamily) -> StructuralLabels:
    """
    Map feature families to structural labels via internal scoring models.
    """
    raise NotImplementedError

def map_to_design(labels: StructuralLabels,
                  scan_input: FootScanInput) -> InsoleDesignConfig:
    """
    Convert structural labels + metadata into per-foot insole configuration.
    """
    raise NotImplementedError

11.2 Orchestration Entry Point

from dataclasses import dataclass

@dataclass
class MorphoFitAIResult:
    labels: StructuralLabels
    design_config: InsoleDesignConfig
    debug_info: Dict[str, Any]

def run_morphofit_ai(scan_input: FootScanInput) -> MorphoFitAIResult:
    """
    End-to-end pipeline for a single foot scan.
    """
    baseline_pre = preprocess_image(scan_input.baseline_image)
    windlass_pre = preprocess_image(scan_input.windlass_image)

    baseline_lm = estimate_landmarks(baseline_pre)
    windlass_lm = estimate_landmarks(windlass_pre)

    features = extract_features(
        baseline_pre=baseline_pre,
        windlass_pre=windlass_pre,
        baseline_lm=baseline_lm,
        windlass_lm=windlass_lm,
    )

    labels = classify_structure(features)
    design_cfg = map_to_design(labels, scan_input)

    return MorphoFitAIResult(
        labels=labels,
        design_config=design_cfg,
        debug_info={
            "features": features,
            "foot_side": scan_input.foot_side,
        },
    )

12. Future Directions

Planned enhancements and research paths.

Copy link
  • Capture additional views (e.g., rearfoot) when user setup permits.
  • Increase robustness across environments, flooring, and device cameras.
  • Introduce optional short video inputs for richer dynamic approximation.
  • Add non-diagnostic training guidance modules focused on strength and mobility.
  • Continuously refine models as new cohorts and validation data arrive.

13. Glossary of Key Terms

Shared vocabulary for reviewers and assistants.

Copy link
Medial longitudinal arch
Inner arch spanning the heel through the first metatarsal.
Functional pronation
Coupled motion of eversion, abduction, and dorsiflexion described as a structural tendency in this context.
Windlass mechanism
Arch lifting and stiffening triggered by great toe dorsiflexion via plantar fascia tensioning.
Flexible collapse
Arch appears low under load but rises substantially with windlass activation.
Rigid low-arch
Low or flat arch that shows minimal change under activation.
Custom insole configuration
Foot-specific combination of support, stiffness, control, and transition derived from MorphoFit AI assessment.

Ready to keep the documentation current?

Drop in new validation results, pose guidance, or product updates so reviewers and assistants always have the latest truth.