File size: 918 Bytes
f22725d
a0c3f80
 
 
 
f22725d
a0c3f80
 
 
 
 
 
 
 
 
f22725d
a0c3f80
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

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)