fatestaynight commited on
Commit
16c22eb
Β·
verified Β·
1 Parent(s): 2891fff

Delete app.ipynb

Browse files
Files changed (1) hide show
  1. app.ipynb +0 -1
app.ipynb DELETED
@@ -1 +0,0 @@
1
- {"cells":[{"cell_type":"code","execution_count":1,"id":"57ec4eb8-0dcd-4b6d-80ce-faede7fa33a7","metadata":{"id":"57ec4eb8-0dcd-4b6d-80ce-faede7fa33a7","executionInfo":{"status":"ok","timestamp":1739905038943,"user_tz":-480,"elapsed":9086,"user":{"displayName":"John W","userId":"12183608908885529142"}}},"outputs":[],"source":["!pip install gradio python-docx --quiet"]},{"cell_type":"code","execution_count":2,"id":"ae899907-8d48-4b50-a1c5-e2488f4f3f07","metadata":{"id":"ae899907-8d48-4b50-a1c5-e2488f4f3f07","executionInfo":{"status":"ok","timestamp":1739905064469,"user_tz":-480,"elapsed":25528,"user":{"displayName":"John W","userId":"12183608908885529142"}}},"outputs":[],"source":["import gradio as gr\n","import pandas as pd\n","import keras\n","import numpy as np\n","from docx import Document"]},{"cell_type":"code","execution_count":3,"id":"a6cf76fb-c6af-4183-8f10-20a421612f16","metadata":{"id":"a6cf76fb-c6af-4183-8f10-20a421612f16","executionInfo":{"status":"ok","timestamp":1739905071310,"user_tz":-480,"elapsed":6843,"user":{"displayName":"John W","userId":"12183608908885529142"}}},"outputs":[],"source":["docs = []\n","model = keras.saving.load_model(\"resnet50_best.keras\")"]},{"cell_type":"code","execution_count":4,"id":"2bd62abd-7fc2-4486-b852-2614b933e785","metadata":{"id":"2bd62abd-7fc2-4486-b852-2614b933e785","executionInfo":{"status":"ok","timestamp":1739905071311,"user_tz":-480,"elapsed":6,"user":{"displayName":"John W","userId":"12183608908885529142"}}},"outputs":[],"source":["def upload_images(image_paths):\n"," docs.clear()\n"," df = pd.DataFrame(columns=[\"Index\", \"File\", \"Result\"])\n"," for i in range(len(image_paths)):\n"," df.loc[i] = [str(i+1), image_paths[i].split(\"/\")[-1], predict(image_paths[i])]\n"," docs.append([str(i+1), image_paths[i].split(\"/\")[-1], predict(image_paths[i])])\n"," return [df, gr.Button(visible=True), gr.DownloadButton(label=\"Download report\", visible=True)]"]},{"cell_type":"code","execution_count":5,"id":"1596a301-1efc-4eb9-85a3-51eb97da8057","metadata":{"id":"1596a301-1efc-4eb9-85a3-51eb97da8057","executionInfo":{"status":"ok","timestamp":1739905071311,"user_tz":-480,"elapsed":5,"user":{"displayName":"John W","userId":"12183608908885529142"}}},"outputs":[],"source":["# Function to preprocess image and predict\n","def predict(image_path):\n"," img = keras.utils.load_img(image_path, target_size=(300, 300))\n"," img_array = keras.utils.img_to_array(img)\n"," img_array = keras.ops.expand_dims(img_array, 0)\n"," prediction = model.predict(img_array)\n"," class_names = [\"Defective\", \"Ok\"] # Class 0: def, Class 1: ok\n"," predicted_class = class_names[1] if prediction > 0.5 else class_names[0]\n"," return predicted_class"]},{"cell_type":"code","source":["def generate_docs():\n"," document = Document()\n"," document.add_heading(\"Casting Report\", 0)\n"," table = document.add_table(rows=1, cols=3)\n"," hdr_cells = table.rows[0].cells\n"," hdr_cells[0].text = \"Index\"\n"," hdr_cells[1].text = \"File\"\n"," hdr_cells[2].text = \"Result\"\n"," for i in range(len(docs)):\n"," row_cells = table.add_row().cells\n"," row_cells[0].text = docs[i][0]\n"," row_cells[1].text = docs[i][1]\n"," row_cells[2].text = docs[i][2]\n"," document.save(\"casting_report.docx\")\n"," return [gr.UploadButton(visible=True), gr.DownloadButton(visible=True)]"],"metadata":{"id":"x5Ew-SDayMoY","executionInfo":{"status":"ok","timestamp":1739905071311,"user_tz":-480,"elapsed":5,"user":{"displayName":"John W","userId":"12183608908885529142"}}},"id":"x5Ew-SDayMoY","execution_count":6,"outputs":[]},{"cell_type":"code","execution_count":7,"id":"5c9fd2ea-2b33-477a-8ae2-d3250071292a","metadata":{"id":"5c9fd2ea-2b33-477a-8ae2-d3250071292a","executionInfo":{"status":"ok","timestamp":1739905072225,"user_tz":-480,"elapsed":919,"user":{"displayName":"John W","userId":"12183608908885529142"}}},"outputs":[],"source":["with gr.Blocks() as demo:\n"," with gr.Column():\n"," f = gr.File(file_count=\"multiple\", file_types=[\".jpg\", \".jpeg\", \".png\", \".bmp\", \".tif\", \".tiff\"])\n"," u = gr.Button(\"Upload files\", visible=True)\n"," d = gr.DownloadButton(\"Download report\", visible=True)\n"," r = gr.DataFrame(headers=[\"Index\", \"File\", \"Result\"])\n","\n"," u.click(upload_images, f, [r, u, d])\n"," d.click(generate_docs, None, [u, d])"]},{"cell_type":"code","execution_count":8,"id":"7e98ec92-54c7-4489-bfc7-7d61b273640b","metadata":{"id":"7e98ec92-54c7-4489-bfc7-7d61b273640b","executionInfo":{"status":"ok","timestamp":1739905198882,"user_tz":-480,"elapsed":126660,"user":{"displayName":"John W","userId":"12183608908885529142"}},"colab":{"base_uri":"https://localhost:8080/","height":1000},"outputId":"b78a1692-e41c-42c6-bf63-9246b2696a0d"},"outputs":[{"output_type":"stream","name":"stdout","text":["Colab notebook detected. This cell will run indefinitely so that you can see errors and logs. To turn off, set debug=False in launch().\n","* Running on public URL: https://ede8d1dbf915945a90.gradio.live\n","\n","This share link expires in 72 hours. For free permanent hosting and GPU upgrades, run `gradio deploy` from the terminal in the working directory to deploy to Hugging Face Spaces (https://huggingface.co/spaces)\n"]},{"output_type":"display_data","data":{"text/plain":["<IPython.core.display.HTML object>"],"text/html":["<div><iframe src=\"https://ede8d1dbf915945a90.gradio.live\" width=\"100%\" height=\"500\" allow=\"autoplay; camera; microphone; clipboard-read; clipboard-write;\" frameborder=\"0\" allowfullscreen></iframe></div>"]},"metadata":{}},{"output_type":"stream","name":"stdout","text":["\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m3s\u001b[0m 3s/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 548ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 525ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 366ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 328ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 323ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 323ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 323ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 312ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 323ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 311ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 324ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 321ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 318ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 338ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 321ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 323ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 334ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 575ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 539ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 460ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 315ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 328ms/step\n","\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 318ms/step\n","Keyboard interruption in main thread... closing server.\n","Killing tunnel 127.0.0.1:7860 <> https://ede8d1dbf915945a90.gradio.live\n"]},{"output_type":"execute_result","data":{"text/plain":[]},"metadata":{},"execution_count":8}],"source":["demo.launch(share=True, debug=True)"]}],"metadata":{"kernelspec":{"display_name":"Python 3 (ipykernel)","language":"python","name":"python3"},"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.10.13"},"colab":{"provenance":[]}},"nbformat":4,"nbformat_minor":5}