Teaching machines to move the cursor with your vibe.
pip install -r requirements.txtpython collect_data.pyMove your mouse naturally to different targets. Press ESC to stop.
python train_model.py
python distill_model.pypython optimize_model.py
python optimize_model.py --studentpython visualize_prediction.py
python visualize_prediction.py --student
python visualize_prediction.py --original- Input: 12D state (position, velocity, target info, progress)
- Teacher Model: MLP (256→512→256→2) with residual connections
- Student Model: Lightweight MLP (128→128→64→2), ~80% smaller
- Features: Noise injection, progress-aware scheduling, DAgger-style training
- Optimization: BatchNorm fusion, weight folding, dynamic quantization, JIT compilation
| Metric | Value |
|---|---|
| Hit Rate | >99% (with replanning system) |
| Avg Error | ~4.3 px (+ ~1 px for student model) |
| Inference Time | <1ms (optimized model on CPU) |
| Model Size | Teacher: 1.0 MB, Student: 0.1 MB |
| Training Time | <=10 min (depends on data size and HW performance) |
train_model.py- AdamW optimizer, Huber loss, cosine annealing, residual connectionsdistill_model.py- Knowledge distillation for model compressionoptimize_model.py- Post-training optimization (fusion, quantization, JIT)visualize_prediction.py- Real-time visualizationmouse_control_api.py- API for mouse control integration
- Weighted Loss: Higher penalty for errors near target endpoint
- Noise Scheduling: Reduced randomness as cursor approaches target
- Residual Connections: Improved gradient flow with minimal cost
Yet another solution for combating error accumulation.
Traditional trajectory prediction models suffer from the Markov assumption: they assume the current state perfectly captures all relevant history. In reality, this assumption breaks down quickly, leading to compounding errors over long trajectories.
The Problem:
- Small prediction errors accumulate over time
- Model "drifts" away from optimal trajectory
- Cursor gets stuck in local minima or diverges completely
Our Solution: The Smart Replanning system continuously monitors trajectory health and triggers automatic recovery:
- Error Detection: Tracks prediction confidence and deviation metrics
- Intelligent Triggers: Detects stuck/divergent states before they become critical
- Seamless Recovery: Resets planning with corrected state while maintaining smoothness
- Adaptive Thresholds: Adjusts sensitivity based on trajectory progress
Impact:
- Reduces long-trajectory failure rate by ~90%
- Maintains smooth, natural-looking cursor motion
- Works transparently without manual intervention
This makes VibePointer robust in real-world scenarios where perfect Markov assumptions don't hold.
- Mouse trajectory simulation and prediction
- Human-computer interaction research
- Automated UI testing
- Advanced CAPTCHA bypassing