Spaces:
Build error
Build error
| """ | |
| 配置文件 | |
| """ | |
| import os | |
| from typing import Dict, Any | |
| # 文件限制 | |
| MAX_FILE_SIZE_MB = 50 | |
| SUPPORTED_FORMATS = ['.obj', '.glb', '.ply', '.stl'] | |
| # 处理参数 | |
| DEFAULT_PROCESSING_PARAMS = { | |
| 'input_pc_num': 8192, | |
| 'confidence_threshold': 0.8, | |
| 'generate_preview': True, | |
| 'timeout_seconds': 120, | |
| } | |
| # 演示提示模板 | |
| DEMO_PROMPTS = { | |
| 'human': "realistic human skeleton for walking and animation", | |
| 'animal': "four-legged animal with spine and tail bones for natural movement", | |
| 'robot': "mechanical robot with joint articulation for industrial movements", | |
| 'bird': "bird skeleton with wing bones for flight animation", | |
| 'generic': "articulated skeleton suitable for animation" | |
| } | |
| # 示例模型描述 | |
| EXAMPLE_MODELS = [ | |
| { | |
| 'name': 'Boy Character', | |
| 'file': 'boy.obj', | |
| 'prompt': DEMO_PROMPTS['human'], | |
| 'description': 'Human character suitable for walk cycle and basic animations' | |
| }, | |
| { | |
| 'name': 'Dog Model', | |
| 'file': 'dog.obj', | |
| 'prompt': DEMO_PROMPTS['animal'], | |
| 'description': 'Quadruped animal with natural bone structure' | |
| }, | |
| { | |
| 'name': 'Bird Model', | |
| 'file': 'bird.obj', | |
| 'prompt': DEMO_PROMPTS['bird'], | |
| 'description': 'Bird with wing bones for flight animations' | |
| }, | |
| { | |
| 'name': 'Robot/Mech', | |
| 'file': 'ironman.obj', | |
| 'prompt': DEMO_PROMPTS['robot'], | |
| 'description': 'Mechanical character with joint-based movement' | |
| } | |
| ] | |
| # UI配置 | |
| UI_CONFIG = { | |
| 'title': '🎯 MagicArticulate MVP', | |
| 'description': """ | |
| AI-powered 3D model articulation using skeletal generation. | |
| Upload a 3D model and get an automatically generated skeleton for animation. | |
| """, | |
| 'theme': 'soft', | |
| 'show_tips': True, | |
| 'max_examples': 4 | |
| } | |
| # 性能配置 | |
| PERFORMANCE_CONFIG = { | |
| 'use_gpu': True, | |
| 'mixed_precision': 'fp16', | |
| 'batch_size': 1, | |
| 'max_concurrent_requests': 2, | |
| 'cleanup_temp_files': True | |
| } | |
| def get_config() -> Dict[str, Any]: | |
| """获取完整配置""" | |
| return { | |
| 'file_limits': { | |
| 'max_size_mb': MAX_FILE_SIZE_MB, | |
| 'supported_formats': SUPPORTED_FORMATS | |
| }, | |
| 'processing': DEFAULT_PROCESSING_PARAMS, | |
| 'prompts': DEMO_PROMPTS, | |
| 'examples': EXAMPLE_MODELS, | |
| 'ui': UI_CONFIG, | |
| 'performance': PERFORMANCE_CONFIG | |
| } |