File size: 2,595 Bytes
7656535
 
 
 
 
 
 
 
 
 
 
 
 
7469cf1
7656535
 
 
 
7469cf1
7656535
 
 
 
 
 
 
7469cf1
7656535
 
 
 
 
 
 
 
7469cf1
7656535
 
 
7469cf1
7656535
 
 
 
 
7469cf1
7656535
 
 
 
 
7469cf1
 
 
7656535
 
 
 
7469cf1
7656535
 
 
 
 
 
7469cf1
7656535
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "1587b6c6",
   "metadata": {},
   "outputs": [],
   "source": [
    "from fastai.vision.all import *\n",
    "import gradio as gr\n",
    "\n",
    "learn = load_learner('watersports.pkl')\n",
    "categories = learn.dls.vocab"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "id": "066f65b3",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Running on local URL:  http://127.0.0.1:7875/\n",
      "\n",
      "To create a public link, set `share=True` in `launch()`.\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "(<fastapi.applications.FastAPI at 0x7f9a58a15a60>,\n",
       " 'http://127.0.0.1:7875/',\n",
       " None)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "\n",
    "\n",
    "def classify_image(img):\n",
    "    pred,idx,probs = learn.predict(img)\n",
    "    return( dict(zip(categories, map(float,probs))))\n",
    "\n",
    "title = \"Which Watersport?\"\n",
    "description = \"Drag an image into the analyser.  Try to guess the water sport yourself, before hitting submit. \\\n",
    "You need to clear before dragging next image.  You can also drag images directly from a google search.\"\n",
    "image = gr.inputs.Image(shape=(192,192))\n",
    "label = gr.outputs.Label()\n",
    "examples = './examples'\n",
    "\n",
    "iface = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples, title=title, description=description)\n",
    "iface.launch(inline=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "165054fe",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python [conda env:root] *",
   "language": "python",
   "name": "conda-root-py"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.10"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}