Spaces:
Paused
Paused
| """ | |
| Serializers for Transparent Background Removal API | |
| """ | |
| from rest_framework import serializers | |
| class StyleResultSerializer(serializers.Serializer): | |
| """Single style result""" | |
| styleCode = serializers.CharField(help_text="Style code: A, B, C, or D") | |
| styleName = serializers.CharField(help_text="Human readable style name") | |
| base64 = serializers.CharField(help_text="Base64 encoded PNG image") | |
| class GenerateStylesResponseSerializer(serializers.Serializer): | |
| """Response for generate-styles endpoint""" | |
| success = serializers.BooleanField() | |
| styles = StyleResultSerializer(many=True, required=False) | |
| error = serializers.CharField(required=False, allow_null=True) | |
| class AnalysisDataSerializer(serializers.Serializer): | |
| """Image analysis data""" | |
| edge = serializers.FloatField(help_text="Edge strength (0-100)") | |
| saturation = serializers.FloatField(help_text="Center saturation (0-100)") | |
| whitePct = serializers.FloatField(help_text="White percentage in center (0-100)") | |
| contrast = serializers.FloatField(help_text="Contrast between center and corners") | |
| hasAnimal = serializers.BooleanField(help_text="Whether animal was detected") | |
| yoloLabels = serializers.ListField( | |
| child=serializers.CharField(), | |
| help_text="Detected object labels from YOLO" | |
| ) | |
| class RecommendStyleResponseSerializer(serializers.Serializer): | |
| """Response for recommend-style endpoint""" | |
| success = serializers.BooleanField() | |
| recommendedStyle = serializers.CharField( | |
| required=False, | |
| help_text="Recommended style code: A or B" | |
| ) | |
| analysis = AnalysisDataSerializer(required=False) | |
| error = serializers.CharField(required=False, allow_null=True) | |