""" Fashion Inpainting System - Example Implementation Correct usage of the fashion_safety_checker API """ from fashion_safety_checker import create_fashion_safety_pipeline def main(): """ Example usage of the Fashion Inpainting System """ # Initialize the fashion safety pipeline pipeline = create_fashion_safety_pipeline() # Example 1: Basic transformation print("๐ŸŽจ Basic Fashion Transformation") result = pipeline.safe_fashion_transformation( source_image_path="examples/person_in_casual_wear.jpg", checkpoint_path="checkpoints/realistic_vision_v2.safetensors", outfit_prompt="elegant red evening dress", output_path="outputs/red_evening_dress_result.jpg", face_scale=0.90 # Manual face to body ratio adjustment ) if result['success']: print("โœ… Fashion transformation completed successfully") print(f"Output saved to: {result.get('output_path', 'outputs/red_evening_dress_result.jpg')}") else: print("โŒ Transformation blocked by safety system") print(f"Blocking reason: {result['blocking_reason']}") print(f"User message: {result['user_message']}") print("-" * 50) # Example 2: Different outfit style print("๐ŸŽจ Business Outfit Transformation") result = pipeline.safe_fashion_transformation( source_image_path="examples/person_in_casual_wear.jpg", checkpoint_path="checkpoints/fashion_professional_v1.safetensors", outfit_prompt="professional business suit, navy blue, elegant", output_path="outputs/business_suit_result.jpg", face_scale=0.85 ) if result['success']: print("โœ… Business transformation completed") else: print("โŒ Business transformation blocked") print(f"Reason: {result['blocking_reason']}") print(f"Message: {result['user_message']}") print("-" * 50) # Example 3: Swimwear (requires appropriate safety level) print("๐ŸŽจ Swimwear Transformation (Professional Use)") result = pipeline.safe_fashion_transformation( source_image_path="examples/person_in_casual_wear.jpg", checkpoint_path="checkpoints/fashion_permissive_v1.safetensors", outfit_prompt="elegant one-piece swimsuit, professional fashion photography", output_path="outputs/swimwear_result.jpg", face_scale=0.92 ) if result['success']: print("โœ… Swimwear transformation completed") else: print("โŒ Swimwear transformation blocked") print(f"Reason: {result['blocking_reason']}") print(f"Message: {result['user_message']}") print("-" * 50) # Example 4: Error handling for missing files print("๐ŸŽจ Error Handling Example") result = pipeline.safe_fashion_transformation( source_image_path="examples/nonexistent_image.jpg", # This will fail checkpoint_path="checkpoints/some_checkpoint.safetensors", outfit_prompt="casual summer dress", output_path="outputs/error_test.jpg", face_scale=0.90 ) if result['success']: print("โœ… This shouldn't happen") else: print("โŒ Expected error occurred") print(f"Reason: {result['blocking_reason']}") print(f"Message: {result['user_message']}") def advanced_usage_examples(): """ Advanced usage examples with different parameters """ pipeline = create_fashion_safety_pipeline() # Example with different face scales face_scales = [0.80, 0.85, 0.90, 0.95] for i, scale in enumerate(face_scales): print(f"๐ŸŽจ Testing face_scale={scale}") result = pipeline.safe_fashion_transformation( source_image_path="examples/test_subject.jpg", checkpoint_path="checkpoints/fashion_moderate.safetensors", outfit_prompt="classic white shirt and dark jeans", output_path=f"outputs/face_scale_test_{scale}.jpg", face_scale=scale ) if result['success']: print(f"โœ… face_scale={scale} completed successfully") else: print(f"โŒ face_scale={scale} failed: {result['blocking_reason']}") def batch_processing_example(): """ Example of processing multiple transformations """ pipeline = create_fashion_safety_pipeline() # Batch transformation scenarios transformations = [ { "source": "examples/person1.jpg", "checkpoint": "checkpoints/casual_wear.safetensors", "prompt": "comfortable jeans and cozy sweater", "output": "outputs/person1_casual.jpg", "face_scale": 0.90 }, { "source": "examples/person2.jpg", "checkpoint": "checkpoints/formal_wear.safetensors", "prompt": "elegant black evening gown", "output": "outputs/person2_formal.jpg", "face_scale": 0.88 }, { "source": "examples/person3.jpg", "checkpoint": "checkpoints/business_wear.safetensors", "prompt": "professional gray suit with blue tie", "output": "outputs/person3_business.jpg", "face_scale": 0.85 } ] successful_transformations = 0 failed_transformations = 0 for i, transform in enumerate(transformations): print(f"๐ŸŽจ Processing transformation {i+1}/{len(transformations)}") result = pipeline.safe_fashion_transformation( source_image_path=transform["source"], checkpoint_path=transform["checkpoint"], outfit_prompt=transform["prompt"], output_path=transform["output"], face_scale=transform["face_scale"] ) if result['success']: successful_transformations += 1 print(f"โœ… Transformation {i+1} completed") else: failed_transformations += 1 print(f"โŒ Transformation {i+1} failed: {result['blocking_reason']}") print(f"\n๐Ÿ“Š Batch Processing Results:") print(f"โœ… Successful: {successful_transformations}") print(f"โŒ Failed: {failed_transformations}") print(f"๐Ÿ“ˆ Success Rate: {successful_transformations/len(transformations)*100:.1f}%") def safety_level_examples(): """ Examples demonstrating different safety behaviors """ pipeline = create_fashion_safety_pipeline() # Test different prompts with safety implications test_cases = [ ("conservative business outfit", "Should pass all safety levels"), ("summer beach dress", "Should pass moderate and permissive"), ("elegant swimwear", "May require permissive safety level"), ("inappropriate content", "Should be blocked by safety system") ] for prompt, expectation in test_cases: print(f"\n๐Ÿงช Testing prompt: '{prompt}'") print(f" Expected: {expectation}") result = pipeline.safe_fashion_transformation( source_image_path="examples/test_image.jpg", checkpoint_path="checkpoints/general_fashion.safetensors", outfit_prompt=prompt, output_path=f"outputs/safety_test_{prompt.replace(' ', '_')}.jpg", face_scale=0.90 ) if result['success']: print(f" โœ… Result: Transformation completed") else: print(f" โŒ Result: Blocked - {result['blocking_reason']}") print(f" ๐Ÿ’ฌ Message: {result['user_message']}") if __name__ == "__main__": print("๐ŸŽจ Fashion Inpainting System - Example Usage\n") # Run basic examples main() print("\n" + "="*60) print("Advanced Examples") print("="*60) # Uncomment to run advanced examples # advanced_usage_examples() # batch_processing_example() # safety_level_examples() print("\nโœจ Examples completed!") print("๐Ÿ“– For more information, see the documentation at:") print(" GitHub: https://github.com/your-org/fashion-inpainting-system") print(" Hugging Face: https://huggingface.co/your-org/fashion-inpainting-system")