shaojiang commited on
Commit
9fc626a
1 Parent(s): 352c2c9

Upload 3 files

Browse files
Files changed (3) hide show
  1. pig-model.pkl +3 -0
  2. requirements.txt +2 -0
  3. same-pig.py +54 -0
pig-model.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2a5a3df8e9773340edd13cc3fa09b349de350f1cb7fb986bb9af1a44787e7a27
3
+ size 87818949
requirements.txt ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ torch==2.0.0+cpu
2
+ fastai==2.7.12
same-pig.py ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python
2
+ # coding: utf-8
3
+
4
+ # In[4]:
5
+
6
+
7
+ import gradio as gr
8
+ from fastai.vision.all import *
9
+ import PIL
10
+ import torchvision.transforms as T
11
+
12
+
13
+ def get_y(f):
14
+ return int(f.parent.name)-1
15
+
16
+ # 加载模型
17
+ learn = load_learner('pig-model.pkl')
18
+
19
+ def predict_image(img1, img2):
20
+
21
+ # 将图像转换为 PIL Image 类型
22
+ img1 = Image.fromarray(img1)
23
+ img2 = Image.fromarray(img2)
24
+
25
+
26
+ pred1, _, _ = learn.predict(img1)
27
+ pred2, _, _ = learn.predict(img2)
28
+
29
+ #print("pred1:",pred1,"pred2:",pred2)
30
+
31
+ if pred1 == pred2:
32
+ # 返回预测结果
33
+ return {"是否是同一头猪": "这是同一头猪"}
34
+ else:
35
+ # 返回预测结果
36
+ return {"是否是同一头猪": "这不是同一头猪"}
37
+
38
+
39
+
40
+ # 创建 Gradio 接口
41
+ iface = gr.Interface(
42
+ fn=predict_image,
43
+ inputs=[
44
+ gr.inputs.Image(label="Image 1"),
45
+ gr.inputs.Image(label="Image 2")
46
+ ],
47
+ outputs="text",
48
+ title="猪照片识别模型",
49
+ description="检测两张图片是否是同一只猪。"
50
+ )
51
+
52
+ # 启动 Gradio 接口
53
+ iface.launch()
54
+