farish07's picture
Update app.py
f22725d verified
import gradio as gr
import joblib
import numpy as np
model = joblib.load("models/best_model.pkl")
scaler = joblib.load("models/scaler.pkl")
def predict(Variance_Wavelet, Skewness_Wavelet, Curtosis_Wavelet, Image_Entropy):
features = np.array([[Variance_Wavelet, Skewness_Wavelet, Curtosis_Wavelet, Image_Entropy]])
scaled = scaler.transform(features)
prediction = model.predict(scaled)
return "Authentic" if prediction[0] == 1 else "Forged"
interface = gr.Interface(
fn=predict,
inputs=[
gr.Number(label="Variance of Wavelet"),
gr.Number(label="Skewness of Wavelet"),
gr.Number(label="Curtosis of Wavelet"),
gr.Number(label="Entropy of Image")
],
outputs="text",
title="Banknote Authentication",
description="Enter the banknote features to check if it's authentic or forged."
)
if __name__ == "__main__":
interface.launch(share=True)