Video Analysis - Add Audio Extraction

parent 914c0059
......@@ -2,7 +2,7 @@
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"execution_count": 35,
"id": "90e3f5ea",
"metadata": {},
"outputs": [
......@@ -12,64 +12,53 @@
"text": [
"Requirement already satisfied: mediapipe in c:\\users\\isuri\\anaconda3\\lib\\site-packages (0.8.9.1)\n",
"Requirement already satisfied: OpenCV-python in c:\\users\\isuri\\anaconda3\\lib\\site-packages (4.5.5.64)\n",
"Collecting ffmpeg\n",
" Downloading ffmpeg-1.4.tar.gz (5.1 kB)\n",
"Collecting moviepy\n",
" Using cached moviepy-1.0.3.tar.gz (388 kB)\n",
"Requirement already satisfied: ffmpeg in c:\\users\\isuri\\anaconda3\\lib\\site-packages (1.4)\n",
"Requirement already satisfied: moviepy in c:\\users\\isuri\\anaconda3\\lib\\site-packages (1.0.3)\n",
"Collecting varname\n",
" Downloading varname-0.8.3-py3-none-any.whl (21 kB)\n",
"Requirement already satisfied: absl-py in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from mediapipe) (1.0.0)\n",
"Requirement already satisfied: attrs>=19.1.0 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from mediapipe) (21.2.0)\n",
"Requirement already satisfied: numpy in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from mediapipe) (1.20.3)\n",
"Requirement already satisfied: protobuf>=3.11.4 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from mediapipe) (3.20.1)\n",
"Requirement already satisfied: matplotlib in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from mediapipe) (3.4.3)\n",
"Requirement already satisfied: absl-py in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from mediapipe) (1.0.0)\n",
"Requirement already satisfied: opencv-contrib-python in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from mediapipe) (4.5.5.64)\n",
"Requirement already satisfied: numpy in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from mediapipe) (1.20.3)\n",
"Collecting decorator<5.0,>=4.0.2\n",
" Using cached decorator-4.4.2-py2.py3-none-any.whl (9.2 kB)\n",
"Requirement already satisfied: imageio-ffmpeg>=0.2.0 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from moviepy) (0.4.7)\n",
"Requirement already satisfied: proglog<=1.0.0 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from moviepy) (0.1.10)\n",
"Requirement already satisfied: tqdm<5.0,>=4.11.2 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from moviepy) (4.62.3)\n",
"Requirement already satisfied: requests<3.0,>=2.8.1 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from moviepy) (2.26.0)\n",
"Collecting proglog<=1.0.0\n",
" Downloading proglog-0.1.10-py3-none-any.whl (6.1 kB)\n",
"Requirement already satisfied: imageio<3.0,>=2.5 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from moviepy) (2.9.0)\n",
"Collecting imageio_ffmpeg>=0.2.0\n",
" Downloading imageio_ffmpeg-0.4.7-py3-none-win_amd64.whl (22.6 MB)\n",
"Requirement already satisfied: decorator<5.0,>=4.0.2 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from moviepy) (4.4.2)\n",
"Requirement already satisfied: requests<3.0,>=2.8.1 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from moviepy) (2.26.0)\n",
"Collecting executing<0.9.0,>=0.8.3\n",
" Downloading executing-0.8.3-py2.py3-none-any.whl (16 kB)\n",
"Collecting pure_eval<1.0.0\n",
" Downloading pure_eval-0.2.2-py3-none-any.whl (11 kB)\n",
"Collecting asttokens<3.0.0,>=2.0.0\n",
" Downloading asttokens-2.0.5-py2.py3-none-any.whl (20 kB)\n",
"Requirement already satisfied: six in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from asttokens<3.0.0,>=2.0.0->varname) (1.16.0)\n",
"Requirement already satisfied: pillow in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from imageio<3.0,>=2.5->moviepy) (8.4.0)\n",
"Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (1.26.7)\n",
"Requirement already satisfied: idna<4,>=2.5 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (3.2)\n",
"Requirement already satisfied: charset-normalizer~=2.0.0 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (2.0.4)\n",
"Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (2021.10.8)\n",
"Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (1.26.7)\n",
"Requirement already satisfied: idna<4,>=2.5 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (3.2)\n",
"Requirement already satisfied: colorama in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from tqdm<5.0,>=4.11.2->moviepy) (0.4.4)\n",
"Requirement already satisfied: six in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from absl-py->mediapipe) (1.16.0)\n",
"Requirement already satisfied: python-dateutil>=2.7 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from matplotlib->mediapipe) (2.8.2)\n",
"Requirement already satisfied: pyparsing>=2.2.1 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from matplotlib->mediapipe) (3.0.4)\n",
"Requirement already satisfied: kiwisolver>=1.0.1 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from matplotlib->mediapipe) (1.3.1)\n",
"Requirement already satisfied: cycler>=0.10 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from matplotlib->mediapipe) (0.10.0)\n",
"Building wheels for collected packages: ffmpeg, moviepy\n",
" Building wheel for ffmpeg (setup.py): started\n",
" Building wheel for ffmpeg (setup.py): finished with status 'done'\n",
" Created wheel for ffmpeg: filename=ffmpeg-1.4-py3-none-any.whl size=6083 sha256=e4de5a03b9c64a7650c0a2fac910970b8c8034f46a63a23db680eea96502ff0f\n",
" Stored in directory: c:\\users\\isuri\\appdata\\local\\pip\\cache\\wheels\\1d\\57\\24\\4eff6a03a9ea0e647568e8a5a0546cdf957e3cf005372c0245\n",
" Building wheel for moviepy (setup.py): started\n",
" Building wheel for moviepy (setup.py): finished with status 'done'\n",
" Created wheel for moviepy: filename=moviepy-1.0.3-py3-none-any.whl size=110744 sha256=0cc7fd53e06f58c297cfb57bd037311f6c6f0b14f13ea02adcaee3f67e5623e3\n",
" Stored in directory: c:\\users\\isuri\\appdata\\local\\pip\\cache\\wheels\\29\\15\\e4\\4f790bec6acd51a00b67e8ee1394f0bc6e0135c315f8ff399a\n",
"Successfully built ffmpeg moviepy\n",
"Installing collected packages: proglog, imageio-ffmpeg, decorator, moviepy, ffmpeg\n",
" Attempting uninstall: decorator\n",
" Found existing installation: decorator 5.1.0\n",
" Uninstalling decorator-5.1.0:\n",
" Successfully uninstalled decorator-5.1.0\n",
"Successfully installed decorator-4.4.2 ffmpeg-1.4 imageio-ffmpeg-0.4.7 moviepy-1.0.3 proglog-0.1.10\n"
"Requirement already satisfied: python-dateutil>=2.7 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from matplotlib->mediapipe) (2.8.2)\n",
"Requirement already satisfied: kiwisolver>=1.0.1 in c:\\users\\isuri\\anaconda3\\lib\\site-packages (from matplotlib->mediapipe) (1.3.1)\n",
"Installing collected packages: pure-eval, executing, asttokens, varname\n",
"Successfully installed asttokens-2.0.5 executing-0.8.3 pure-eval-0.2.2 varname-0.8.3\n"
]
}
],
"source": [
"!pip install mediapipe OpenCV-python ffmpeg moviepy\n",
"!pip install mediapipe OpenCV-python ffmpeg moviepy varname\n",
"\n",
"#needed to extract audio - ffmpeg moviepy"
]
},
{
"cell_type": "code",
"execution_count": 2,
"execution_count": 36,
"id": "b6068954",
"metadata": {},
"outputs": [],
......@@ -84,6 +73,7 @@
"import os\n",
"import csv\n",
"import moviepy.editor as editor\n",
"from varname import nameof\n",
"\n",
"mp_drawing = mp.solutions.drawing_utils\n",
"mp_pose = mp.solutions.pose"
......@@ -91,7 +81,121 @@
},
{
"cell_type": "code",
"execution_count": 6,
"execution_count": 102,
"id": "d3784870",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[INFO] Processing LRH_video_01...\n",
"MoviePy - Writing audio in my_result.mp3\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
" \r"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"MoviePy - Done.\n",
"MoviePy - Writing audio in my_result_sr.wav\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
" \r"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"MoviePy - Done.\n"
]
},
{
"ename": "ValueError",
"evalue": "Format \"jpg'\" is not supported (supported formats: eps, jpeg, jpg, pdf, pgf, png, ps, raw, rgba, svg, svgz, tif, tiff)",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)",
"\u001b[1;32m~\\AppData\\Local\\Temp/ipykernel_5588/2276899111.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[0;32m 37\u001b[0m \u001b[0mos\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmakedirs\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0moutput_folder\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mmode\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;36m0o777\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mexist_ok\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;32mFalse\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 38\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 39\u001b[1;33m \u001b[0mplot_coordinates\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0moutput_folder_graphs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[1;32m~\\AppData\\Local\\Temp/ipykernel_5588/3067789329.py\u001b[0m in \u001b[0;36mplot_coordinates\u001b[1;34m(output_folder)\u001b[0m\n\u001b[0;32m 26\u001b[0m \u001b[1;31m#Saving the plot as an image\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 27\u001b[0m \u001b[1;31m#plt.savefig('output_folder' + plot_name + '.jpg', bbox_inches='tight', dpi=150)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 28\u001b[1;33m \u001b[0mplt\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msavefig\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34mr\"'output_folder' + plot_name + '.jpg'\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 29\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 30\u001b[0m \u001b[0mplt\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mshow\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;32m~\\anaconda3\\lib\\site-packages\\matplotlib\\pyplot.py\u001b[0m in \u001b[0;36msavefig\u001b[1;34m(*args, **kwargs)\u001b[0m\n\u001b[0;32m 964\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0msavefig\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 965\u001b[0m \u001b[0mfig\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mgcf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 966\u001b[1;33m \u001b[0mres\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mfig\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msavefig\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 967\u001b[0m \u001b[0mfig\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcanvas\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mdraw_idle\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;31m# need this if 'transparent=True' to reset colors\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 968\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mres\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;32m~\\anaconda3\\lib\\site-packages\\matplotlib\\figure.py\u001b[0m in \u001b[0;36msavefig\u001b[1;34m(self, fname, transparent, **kwargs)\u001b[0m\n\u001b[0;32m 3013\u001b[0m \u001b[0mpatch\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mset_edgecolor\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m'none'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3014\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 3015\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcanvas\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mprint_figure\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfname\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 3016\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3017\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mtransparent\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;32m~\\anaconda3\\lib\\site-packages\\matplotlib\\backend_bases.py\u001b[0m in \u001b[0;36mprint_figure\u001b[1;34m(self, filename, dpi, facecolor, edgecolor, orientation, format, bbox_inches, pad_inches, bbox_extra_artists, backend, **kwargs)\u001b[0m\n\u001b[0;32m 2184\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2185\u001b[0m \u001b[1;31m# get canvas object and print method for format\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 2186\u001b[1;33m \u001b[0mcanvas\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_get_output_canvas\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mbackend\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mformat\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 2187\u001b[0m \u001b[0mprint_method\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mgetattr\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcanvas\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'print_%s'\u001b[0m \u001b[1;33m%\u001b[0m \u001b[0mformat\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2188\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;32m~\\anaconda3\\lib\\site-packages\\matplotlib\\backend_bases.py\u001b[0m in \u001b[0;36m_get_output_canvas\u001b[1;34m(self, backend, fmt)\u001b[0m\n\u001b[0;32m 2113\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mswitch_backends\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcanvas_class\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2114\u001b[0m \u001b[1;31m# Else report error for unsupported format.\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 2115\u001b[1;33m raise ValueError(\n\u001b[0m\u001b[0;32m 2116\u001b[0m \u001b[1;34m\"Format {!r} is not supported (supported formats: {})\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2117\u001b[0m .format(fmt, \", \".join(sorted(self.get_supported_filetypes()))))\n",
"\u001b[1;31mValueError\u001b[0m: Format \"jpg'\" is not supported (supported formats: eps, jpeg, jpg, pdf, pgf, png, ps, raw, rgba, svg, svgz, tif, tiff)"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"###MAIN PROGRAM\n",
"\n",
"#variables\n",
" #storing landmark details\n",
"NOSE, LEFT_EYE_INNER, LEFT_EYE, LEFT_EYE_OUTER, RIGHT_EYE_INNER, RIGHT_EYE, RIGHT_EYE_OUTER, LEFT_MOUTH, RIGHT_MOUTH = [], [], [], [], [], [], [], [], []\n",
"\n",
"landmark_list_desc = [NOSE, LEFT_EYE_INNER, LEFT_EYE, LEFT_EYE_OUTER, RIGHT_EYE_INNER, RIGHT_EYE, RIGHT_EYE_OUTER, LEFT_MOUTH, RIGHT_MOUTH]\n",
"\n",
"landmark_list = ['NOSE', 'LEFT_EYE_INNER', 'LEFT_EYE', 'LEFT_EYE_OUTER', 'RIGHT_EYE_INNER', 'RIGHT_EYE', 'RIGHT_EYE_OUTER', 'LEFT_MOUTH', 'RIGHT_MOUTH']\n",
"\n",
"\n",
" #video details\n",
"VIDEO_STREAM = 'test_videos/LRH_video_01.mp4'\n",
"video_name = 'LRH_video_01'\n",
"output_folder = 'result_analysis/' + video_name\n",
"\n",
"#processing\n",
"obtain_coordinates()\n",
"extract_audio()\n",
"\n",
"#generating yaw,pitch, roll\n",
"\n",
"#saving generated data\n",
" #check if specified path exists, if not create it\n",
"if not (os.path.isdir(output_folder)):\n",
" os.makedirs(output_folder, mode = 0o777, exist_ok = False)\n",
"\n",
"storage_location = output_folder + '/coordinates.csv'\n",
"\n",
" #write data to csv\n",
"write_to_csv(storage_location)\n",
"\n",
" #plotting and saving graphs\n",
"output_folder_graphs = output_folder + '/graphs/'\n",
" #check if specified path for grapghs exists, if not create it\n",
"if not (os.path.isdir(output_folder_graphs)):\n",
" os.makedirs(output_folder, mode = 0o777, exist_ok = False)\n",
"\n",
"plot_coordinates(output_folder_graphs)"
]
},
{
"cell_type": "code",
"execution_count": 81,
"id": "17b488db",
"metadata": {},
"outputs": [],
......@@ -123,13 +227,22 @@
" image.flags.writeable = True\n",
" image = cv2.cvtColor(image, cv2.COLOR_RGB2BGR)\n",
"\n",
" landmark_count = 0\n",
" \n",
" #extract landmarks\n",
" try:\n",
" landmarks = results.pose_landmarks.landmark\n",
" #print(landmarks)\n",
"\n",
" #having a list of set of coordinates of the nose\n",
" nose_landmark_full_desc.append(landmarks[mp_pose.PoseLandmark.NOSE.value])\n",
" NOSE.append(landmarks[mp_pose.PoseLandmark.NOSE.value])\n",
" \n",
" #for landmark in landmark_list_desc:\n",
" #print(landmark_list[landmark_count])\n",
" #print('test : ' + landmarks[mp_pose.PoseLandmark.str(landmark_list[landmark_count]).value])\n",
" #line doesnt work, the append doesn't work\n",
" #landmark.append(landmarks[mp_pose.PoseLandmark.landmark_list[landmark_count].value]) \n",
" #landmark_count += 1\n",
"\n",
" except:\n",
" pass\n",
......@@ -200,125 +313,68 @@
},
{
"cell_type": "code",
"execution_count": 9,
"id": "d3784870",
"execution_count": 103,
"id": "20fb4bd8",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[INFO] Processing LRH_video_01...\n",
"MoviePy - Writing audio in my_result.mp3\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
" \r"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"MoviePy - Done.\n",
"MoviePy - Writing audio in my_result_sr.wav\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
" \r"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"MoviePy - Done.\n"
]
}
],
"outputs": [],
"source": [
"###MAIN PROGRAM\n",
"#plotting graphs for coordinates\n",
"\n",
"#variables\n",
" #storing landmark details\n",
"nose_landmark_full_desc, left_eye_inner_landmark_full_desc, left_eye_landmark_full_desc, left_eye_outer_landmark_full_desc, right_eye_inner_landmark_full_desc, right_eye_landmark_full_desc, right_eye_outer_landmark_full_desc, left_mouth_landmark_full_desc, right_mouth_landmark_full_desc = [], [], [], [], [], [], [], [], []\n",
"def plot_coordinates(output_folder):\n",
" fig = plt.figure()\n",
"\n",
" #video details\n",
"VIDEO_STREAM = 'test_videos/LRH_video_01.mp4'\n",
"video_name = 'LRH_video_01'\n",
"output_folder = 'result_analysis/' + video_name\n",
" # syntax for 3-D projection\n",
" ax = plt.axes(projection ='3d')\n",
"\n",
"#processing\n",
"obtain_coordinates()\n",
"extract_audio()\n",
" x_points, y_points, z_points = [], [], []\n",
" landmark_count = 0\n",
"\n",
"#generating yaw,pitch, roll\n",
"\n",
"#saving generated data\n",
" #check if specified path exists, if not create it\n",
"if not (os.path.isdir(output_folder)):\n",
" os.makedirs(output_folder, mode = 0o777, exist_ok = False)\n",
" for landmark in landmark_list_desc:\n",
"\n",
"storage_location = output_folder + '/coordinates.csv'\n",
" plot_name = '3D line plot of ' + landmark_list[landmark_count]\n",
"\n",
" #write data to csv\n",
"write_to_csv(storage_location)"
" for record in landmark:\n",
" x_points.append(record.x)\n",
" y_points.append(record.y)\n",
" z_points.append(record.z)\n",
"\n",
" ax.plot3D(x_points, y_points, z_points, 'green')\n",
" ax.set_title(plot_name)\n",
"\n",
" path = 'output_folder' + plot_name + '.jpg'\n",
" #Saving the plot as an image\n",
" #plt.savefig('output_folder' + plot_name + '.jpg', bbox_inches='tight', dpi=150)\n",
" plt.savefig(path) \n",
"\n",
" plt.show()\n",
"\n",
" landmark_count += 1"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "20fb4bd8",
"execution_count": 72,
"id": "2b432833",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
"name": "stdout",
"output_type": "stream",
"text": [
"[[], [], [], [], [], [], [], [], []]\n"
]
}
],
"source": [
"fig = plt.figure()\n",
"\n",
"# syntax for 3-D projection\n",
"ax = plt.axes(projection ='3d')\n",
"\n",
"x_points, y_points, z_points = [], [], []\n",
"\n",
"plot_name = '3D line plot of nose'\n",
"\n",
"for record in nose_landmark_full_desc:\n",
" x_points.append(record.x)\n",
" y_points.append(record.y)\n",
" z_points.append(record.z)\n",
"\n",
" \n",
"ax.plot3D(x_points, y_points, z_points, 'green')\n",
"ax.set_title(plot_name)\n",
" \n",
"#Saving the plot as an image\n",
"fig.savefig(plot_name + '.jpg', bbox_inches='tight', dpi=150)\n",
"\n",
"plt.show()\n"
"print(landmark_list_desc)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "047a0ea4",
"id": "18cf8b93",
"metadata": {},
"outputs": [],
"source": []
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment