Spaces:
Running
on
Zero
Running
on
Zero
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>Scribble Image Generator</title> | |
<style> | |
body { font-family: Arial, sans-serif; max-width: 800px; margin: 0 auto; padding: 20px; } | |
.image-container { display: flex; justify-content: space-between; margin-top: 20px; } | |
.image-container img { max-width: 48%; height: auto; } | |
#loading { display: none; } | |
</style> | |
</head> | |
<body> | |
<h1>Scribble Image Generator</h1> | |
<form id="upload-form"> | |
<input type="file" id="file-input" accept="image/*" required> | |
<br><br> | |
<label for="threshold">Threshold:</label> | |
<input type="number" id="threshold" name="threshold" value="20" min="1" max="64"> | |
<br><br> | |
<label for="processor_res">Processor Resolution:</label> | |
<input type="number" id="processor_res" name="processor_res" value="2048" min="64" max="2048"> | |
<br><br> | |
<button type="submit">Generate Scribble</button> | |
</form> | |
<div id="loading">Processing...</div> | |
<div class="image-container"> | |
<img id="original-image" alt="Original Image"> | |
<img id="scribble-image" alt="Scribble Image"> | |
</div> | |
<script> | |
document.getElementById('upload-form').addEventListener('submit', function(e) { | |
e.preventDefault(); | |
var formData = new FormData(); | |
formData.append('file', document.getElementById('file-input').files[0]); | |
formData.append('threshold', document.getElementById('threshold').value); | |
formData.append('processor_res', document.getElementById('processor_res').value); | |
document.getElementById('loading').style.display = 'block'; | |
fetch('/process', { | |
method: 'POST', | |
body: formData | |
}) | |
.then(response => response.json()) | |
.then(data => { | |
document.getElementById('original-image').src = 'data:image/png;base64,' + data.original_image; | |
document.getElementById('scribble-image').src = 'data:image/png;base64,' + data.scribble_image; | |
document.getElementById('loading').style.display = 'none'; | |
}) | |
.catch(error => { | |
console.error('Error:', error); | |
document.getElementById('loading').style.display = 'none'; | |
}); | |
}); | |
</script> | |
</body> | |
</html> |