Spaces:
Sleeping
Sleeping
import gradio as gr | |
from changechip import * | |
def process( | |
input_image, | |
reference_image, | |
resize_factor, | |
output_alpha, | |
window_size, | |
clusters, | |
pca_dim_gray, | |
pca_dim_rgb, | |
): | |
return pipeline( | |
(input_image, reference_image), | |
resize_factor=resize_factor, | |
output_alpha=output_alpha, | |
window_size=window_size, | |
clusters=clusters, | |
pca_dim_gray=pca_dim_gray, | |
pca_dim_rgb=pca_dim_rgb, | |
) | |
with gr.Blocks() as demo: | |
gr.Markdown("# ChangeChip") | |
gr.Markdown( | |
""" | |
Welcome to ChangeChip! This tool allows you to detect defects on printed circuit boards (PCBs) by comparing an input image with a reference "golden sample" image. | |
Simply upload your images, adjust the settings if needed, and click "Run" to highlight any discrepancies. | |
""" | |
) | |
with gr.Row(): | |
with gr.Column(scale=1): | |
input_image = gr.Image(label="Input Image") | |
reference_image = gr.Image(label="Reference Image") | |
with gr.Accordion(label="Other Options", open=False): | |
resize_factor = gr.Slider(0.1, 1, 0.5, step=0.1, label="Resize Factor") | |
output_alpha = gr.Slider(0, 255, 50, step=1, label="Output Alpha") | |
window_size = gr.Slider(0, 10, 5, step=1, label="Window Size") | |
clusters = gr.Slider(0, 32, 16, step=1, label="Clusters") | |
pca_dim_gray = gr.Slider(0, 9, 3, step=1, label="PCA Dim Gray") | |
pca_dim_rgb = gr.Slider(0, 27, 9, step=1, label="PCA Dim RGB") | |
with gr.Column(scale=2): | |
output_image = gr.Image(label="Output Image", scale=9) | |
btn = gr.Button("Run", scale=1) | |
btn.click( | |
fn=process, | |
inputs=[ | |
input_image, | |
reference_image, | |
resize_factor, | |
output_alpha, | |
window_size, | |
clusters, | |
pca_dim_gray, | |
pca_dim_rgb, | |
], | |
outputs=output_image, | |
) | |
if __name__ == "__main__": | |
demo.launch() | |