前回、カメラ(EZVIZ CP1)からRTSP受信できることが確認できたので、画像からの物体認識を簡単に試してみる。
結果だけ先に
こんな感じで、カメラで撮影したデータから、物体認識することができた。
やり方
YOLOv5を使う。
今はYOLOv8が出てるが、会社でYOLOv5を使ったことはあって、動かすまでが簡単だったので。
GitHubのリポジトリをクローンして、サンプルコードでEZVIZ CP1のRTSPを画像ソースとして指定する、というだけ。
condaでYOLO試し用の環境作成
YOLOv5お試し用に、専用のconda環境を作っておく。
Powershellから実行した。
↓コマンド
conda create -n yolov5
↓実行結果
(base) PS C:\work\yolo_test> conda create -n yolov5 Retrieving notices: ...working... done Collecting package metadata (current_repodata.json): done Solving environment: done ==> WARNING: A newer version of conda exists. <== current version: 23.5.2 latest version: 23.7.2 Please update conda by running $ conda update -n base -c defaults conda Or to minimize the number of packages updated during conda update use conda install conda=23.7.2 ## Package Plan ## environment location: C:\Users\a\.conda\envs\yolov5 Proceed ([y]/n)? Preparing transaction: done Verifying transaction: done Executing transaction: done # # To activate this environment, use # # $ conda activate yolov5 # # To deactivate an active environment, use # # $ conda deactivate (base) PS C:\work\yolo_test> conda activate yolov5 (yolov5) PS C:\work\yolo_test>
GitHubリポジトリのクローン
↓コマンド
git clone https://github.com/ultralytics/yolov5
↓実行結果
(yolov5) PS C:\work\yolo_test> git clone https://github.com/ultralytics/yolov5 Cloning into 'yolov5'... remote: Enumerating objects: 15921, done. remote: Counting objects: 100% (41/41), done. remote: Compressing objects: 100% (28/28), done. remote: Total 15921 (delta 17), reused 25 (delta 13), pack-reused 15880Receiving objects: 100% (15921/15921), 12.50Receiving objects: 100% (15921/15921), 14.66 MiB | 26.06 MiB/s, done. Resolving deltas: 100% (10916/10916), done. (yolov5) PS C:\work\yolo_test>
最近も頻繁にアップデートがあるので、今回使ったのがどんな状態のものだったかわかるようにしようと思ったが、どこを見ればいいかよくわからず。
↓GitHubサイト
23/8/15現在で、4日前が最終更新日。
VS Codeに入れたGit Graphで見てみると、コミット情報も見れたので、また何かあったときの参考になるかな。
環境セットアップ
requirements.txtを使って。
↓コマンド
cd yolov5 pip install -r .\requirements.txt
↓実行結果
(yolov5) PS C:\work\yolo_test> cd yolov5 (yolov5) PS C:\work\yolo_test\yolov5> pip install -r .\requirements.txt pip : 用語 'pip' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されませ ん。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行して ください。 発生場所 行:1 文字:1 + pip install -r .\requirements.txt + ~~~ + CategoryInfo : ObjectNotFound: (pip:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException (yolov5) PS C:\work\yolo_test\yolov5>
なぜかpipが通らない…
コマンドプロンプトでやってみる。
今まで会社でやったときはそれでできていたような。
コマンドプロンプトでanaconda使う設定
まず普通にコマンドプロンプト立ち上げてcondaコマンドが使えるようにする。
やり方はPowershellのときと同様。
Windows版Anacondaのインストール: Python環境構築ガイド - python.jp
Anaconda Promptを管理者権限で立ち上げて、下記コマンド実行
conda init
↓結果
(base) C:\Windows\System32>conda init no change C:\ProgramData\anaconda3\Scripts\conda.exe no change C:\ProgramData\anaconda3\Scripts\conda-env.exe no change C:\ProgramData\anaconda3\Scripts\conda-script.py no change C:\ProgramData\anaconda3\Scripts\conda-env-script.py no change C:\ProgramData\anaconda3\condabin\conda.bat no change C:\ProgramData\anaconda3\Library\bin\conda.bat no change C:\ProgramData\anaconda3\condabin\_conda_activate.bat no change C:\ProgramData\anaconda3\condabin\rename_tmp.bat no change C:\ProgramData\anaconda3\condabin\conda_auto_activate.bat no change C:\ProgramData\anaconda3\condabin\conda_hook.bat no change C:\ProgramData\anaconda3\Scripts\activate.bat no change C:\ProgramData\anaconda3\condabin\activate.bat no change C:\ProgramData\anaconda3\condabin\deactivate.bat no change C:\ProgramData\anaconda3\Scripts\activate no change C:\ProgramData\anaconda3\Scripts\deactivate no change C:\ProgramData\anaconda3\etc\profile.d\conda.sh no change C:\ProgramData\anaconda3\etc\fish\conf.d\conda.fish no change C:\ProgramData\anaconda3\shell\condabin\Conda.psm1 no change C:\ProgramData\anaconda3\shell\condabin\conda-hook.ps1 no change C:\ProgramData\anaconda3\Lib\site-packages\xontrib\conda.xsh no change C:\ProgramData\anaconda3\etc\profile.d\conda.csh no change C:\Users\a\Documents\WindowsPowerShell\profile.ps1 modified HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun ==> For changes to take effect, close and re-open your current shell. <== (base) C:\Windows\System32>
別でコマンドプロンプト立ち上げて。
Microsoft Windows [Version 10.0.22621.2134] (c) Microsoft Corporation. All rights reserved. C:\work\yolo_test>conda activate yolov5 (yolov5) C:\work\yolo_test>cd yolov5 (yolov5) C:\work\yolo_test\yolov5>pip install -r requirements.txt 'pip' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 (yolov5) C:\work\yolo_test\yolov5>
やっぱりダメだった。
またPowershellに戻ってやってみる。
condaコマンドでrequirements.txtを読み込む案
How to install packages from Requirement.txt in python using anaconda? - Stack Overflow
以下のコマンドで。
conda install --file .\requirements.txt
結果。
(yolov5) PS C:\work\yolo_test\yolov5> conda install --file .\requirements.txt Collecting package metadata (current_repodata.json): done Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve. Collecting package metadata (repodata.json): done Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve. PackagesNotFoundError: The following packages are not available from current channels: - torch[version='>=1.8.0'] - ultralytics[version='>=8.0.147'] - opencv-python[version='>=4.1.1'] - thop[version='>=0.1.1'] Current channels: - https://repo.anaconda.com/pkgs/main/win-64 - https://repo.anaconda.com/pkgs/main/noarch - https://repo.anaconda.com/pkgs/r/win-64 - https://repo.anaconda.com/pkgs/r/noarch - https://repo.anaconda.com/pkgs/msys2/win-64 - https://repo.anaconda.com/pkgs/msys2/noarch To search for alternate channels that may provide the conda package you're looking for, navigate to https://anaconda.org and use the search bar at the top of the page. (yolov5) PS C:\work\yolo_test\yolov5>
anacondaのチャンネルに色々ないといわれてしまった。
conda環境にpipをインストールして、pipでやる案
まずpipのインストール。
(yolov5) PS C:\work\yolo_test\yolov5> conda install pip Collecting package metadata (current_repodata.json): done Solving environment: done ==> WARNING: A newer version of conda exists. <== current version: 23.5.2 latest version: 23.7.2 Please update conda by running $ conda update -n base -c defaults conda Or to minimize the number of packages updated during conda update use conda install conda=23.7.2 ## Package Plan ## environment location: C:\Users\a\.conda\envs\yolov5 added / updated specs: - pip The following packages will be downloaded: package | build ---------------------------|----------------- openssl-3.0.10 | h2bbff1b_0 7.4 MB ------------------------------------------------------------ Total: 7.4 MB The following NEW packages will be INSTALLED: bzip2 pkgs/main/win-64::bzip2-1.0.8-he774522_0 ca-certificates pkgs/main/win-64::ca-certificates-2023.05.30-haa95532_0 libffi pkgs/main/win-64::libffi-3.4.4-hd77b12b_0 openssl pkgs/main/win-64::openssl-3.0.10-h2bbff1b_0 pip pkgs/main/win-64::pip-23.2.1-py311haa95532_0 python pkgs/main/win-64::python-3.11.4-he1021f5_0 setuptools pkgs/main/win-64::setuptools-68.0.0-py311haa95532_0 sqlite pkgs/main/win-64::sqlite-3.41.2-h2bbff1b_0 tk pkgs/main/win-64::tk-8.6.12-h2bbff1b_0 tzdata pkgs/main/noarch::tzdata-2023c-h04d1e81_0 vc pkgs/main/win-64::vc-14.2-h21ff451_1 vs2015_runtime pkgs/main/win-64::vs2015_runtime-14.27.29016-h5e58377_2 wheel pkgs/main/win-64::wheel-0.38.4-py311haa95532_0 xz pkgs/main/win-64::xz-5.4.2-h8cc25b3_0 zlib pkgs/main/win-64::zlib-1.2.13-h8cc25b3_0 Proceed ([y]/n)? Downloading and Extracting Packages Preparing transaction: done Verifying transaction: done Executing transaction: done (yolov5) PS C:\work\yolo_test\yolov5>
とりあえずできた。
次、pip実行。
下記は実行結果の途中は省略してるが、今後の参考のため、クリックしたら全結果が開いて出てくるようにしておいた。
結果ログ一部。(クリックで結果ログが全部表示されます。)
(yolov5) PS C:\work\yolo_test\yolov5> pip install -r requirements.txt Collecting gitpython>=3.1.30 (from -r requirements.txt (line 5)) Obtaining dependency information for gitpython>=3.1.30 from https://files.pythonhosted.org/packages/67/50/742c2fb60989b76ccf7302c7b1d9e26505d7054c24f08cc7ec187faaaea7/GitPython-3.1.32-py3-none-any.whl.metadata Downloading GitPython-3.1.32-py3-none-any.whl.metadata (10.0 kB) Collecting matplotlib>=3.3 (from -r requirements.txt (line 6)) Obtaining dependency information for matplotlib>=3.3 from https://files.pythonhosted.org/packages/4d/9c/65830d4a56c47f5283eaa244dc1228c5da9c844a9f999ebcc2e69bf6cc65/matplotlib-3.7.2-cp311-cp311-win_amd64.whl.metadata Downloading matplotlib-3.7.2-cp311-cp311-win_amd64.whl.metadata (5.8 kB) Collecting numpy>=1.22.2 (from -r requirements.txt (line 7)) Obtaining dependency information for numpy>=1.22.2 from https://files.pythonhosted.org/packages/72/b2/02770e60c4e2f7e158d923ab0dea4e9f146a2dbf267fec6d8dc61d475689/numpy-1.25.2-cp311-cp311-win_amd64.whl.metadata ... Downloading filelock-3.12.2-py3-none-any.whl (10 kB) Downloading typing_extensions-4.7.1-py3-none-any.whl (33 kB) Downloading MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl (17 kB) Installing collected packages: pytz, py-cpuinfo, mpmath, urllib3, tzdata, typing-extensions, sympy, smmap, six, PyYAML, pyparsing, psutil, Pillow, packaging, numpy, networkx, MarkupSafe, kiwisolver, idna, fonttools, filelock, cycler, colorama, charset-normalizer, certifi, tqdm, scipy, requests, python-dateutil, opencv-python, jinja2, gitdb, contourpy, torch, pandas, matplotlib, gitpython, torchvision, thop, seaborn, ultralytics Successfully installed MarkupSafe-2.1.3 Pillow-10.0.0 PyYAML-6.0.1 certifi-2023.7.22 charset-normalizer-3.2.0 colorama-0.4.6 contourpy-1.1.0 cycler-0.11.0 filelock-3.12.2 fonttools-4.42.0 gitdb-4.0.10 gitpython-3.1.32 idna-3.4 jinja2-3.1.2 kiwisolver-1.4.4 matplotlib-3.7.2 mpmath-1.3.0 networkx-3.1 numpy-1.25.2 opencv-python-4.8.0.76 packaging-23.1 pandas-2.0.3 psutil-5.9.5 py-cpuinfo-9.0.0 pyparsing-3.0.9 python-dateutil-2.8.2 pytz-2023.3 requests-2.31.0 scipy-1.11.1 seaborn-0.12.2 six-1.16.0 smmap-5.0.0 sympy-1.12 thop-0.1.1.post2209072238 torch-2.0.1 torchvision-0.15.2 tqdm-4.66.1 typing-extensions-4.7.1 tzdata-2023.3 ultralytics-8.0.154 urllib3-2.0.4 (yolov5) PS C:\work\yolo_test\yolov5>
結果全部。
(yolov5) PS C:\work\yolo_test\yolov5> pip install -r requirements.txt Collecting gitpython>=3.1.30 (from -r requirements.txt (line 5)) Obtaining dependency information for gitpython>=3.1.30 from https://files.pythonhosted.org/packages/67/50/742c2fb60989b76ccf7302c7b1d9e26505d7054c24f08cc7ec187faaaea7/GitPython-3.1.32-py3-none-any.whl.metadata Downloading GitPython-3.1.32-py3-none-any.whl.metadata (10.0 kB) Collecting matplotlib>=3.3 (from -r requirements.txt (line 6)) Obtaining dependency information for matplotlib>=3.3 from https://files.pythonhosted.org/packages/4d/9c/65830d4a56c47f5283eaa244dc1228c5da9c844a9f999ebcc2e69bf6cc65/matplotlib-3.7.2-cp311-cp311-win_amd64.whl.metadata Downloading matplotlib-3.7.2-cp311-cp311-win_amd64.whl.metadata (5.8 kB) Collecting numpy>=1.22.2 (from -r requirements.txt (line 7)) Obtaining dependency information for numpy>=1.22.2 from https://files.pythonhosted.org/packages/72/b2/02770e60c4e2f7e158d923ab0dea4e9f146a2dbf267fec6d8dc61d475689/numpy-1.25.2-cp311-cp311-win_amd64.whl.metadata Downloading numpy-1.25.2-cp311-cp311-win_amd64.whl.metadata (5.7 kB) Collecting opencv-python>=4.1.1 (from -r requirements.txt (line 8)) Obtaining dependency information for opencv-python>=4.1.1 from https://files.pythonhosted.org/packages/fb/c4/f574ba6f04e6d7bf8c38d23e7a52389566dd7631fee0bcdd79ea07ef2dbf/opencv_python-4.8.0.76-cp37-abi3-win_amd64.whl.metadata Downloading opencv_python-4.8.0.76-cp37-abi3-win_amd64.whl.metadata (20 kB) Collecting Pillow>=7.1.2 (from -r requirements.txt (line 9)) Obtaining dependency information for Pillow>=7.1.2 from https://files.pythonhosted.org/packages/66/d4/054e491f0880bf0119ee79cdc03264e01d5732e06c454da8c69b83a7c8f2/Pillow-10.0.0-cp311-cp311-win_amd64.whl.metadata Downloading Pillow-10.0.0-cp311-cp311-win_amd64.whl.metadata (9.6 kB) Collecting psutil (from -r requirements.txt (line 10)) Downloading psutil-5.9.5-cp36-abi3-win_amd64.whl (255 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 255.1/255.1 kB 15.3 MB/s eta 0:00:00 Collecting PyYAML>=5.3.1 (from -r requirements.txt (line 11)) Obtaining dependency information for PyYAML>=5.3.1 from https://files.pythonhosted.org/packages/b3/34/65bb4b2d7908044963ebf614fe0fdb080773fc7030d7e39c8d3eddcd4257/PyYAML-6.0.1-cp311-cp311-win_amd64.whl.metadata Downloading PyYAML-6.0.1-cp311-cp311-win_amd64.whl.metadata (2.1 kB) Collecting requests>=2.23.0 (from -r requirements.txt (line 12)) Obtaining dependency information for requests>=2.23.0 from https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl.metadata Downloading requests-2.31.0-py3-none-any.whl.metadata (4.6 kB) Collecting scipy>=1.4.1 (from -r requirements.txt (line 13)) Obtaining dependency information for scipy>=1.4.1 from https://files.pythonhosted.org/packages/04/b8/947f40706ee2e316fd1a191688f690c4c2b351c2d043fe9deb9b7940e36e/scipy-1.11.1-cp311-cp311-win_amd64.whl.metadata Downloading scipy-1.11.1-cp311-cp311-win_amd64.whl.metadata (59 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.1/59.1 kB ? eta 0:00:00 Collecting thop>=0.1.1 (from -r requirements.txt (line 14)) Downloading thop-0.1.1.post2209072238-py3-none-any.whl (15 kB) Collecting torch>=1.8.0 (from -r requirements.txt (line 15)) Downloading torch-2.0.1-cp311-cp311-win_amd64.whl (172.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 172.3/172.3 MB 22.6 MB/s eta 0:00:00 Collecting torchvision>=0.9.0 (from -r requirements.txt (line 16)) Downloading torchvision-0.15.2-cp311-cp311-win_amd64.whl (1.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 79.0 MB/s eta 0:00:00 Collecting tqdm>=4.64.0 (from -r requirements.txt (line 17)) Obtaining dependency information for tqdm>=4.64.0 from https://files.pythonhosted.org/packages/00/e5/f12a80907d0884e6dff9c16d0c0114d81b8cd07dc3ae54c5e962cc83037e/tqdm-4.66.1-py3-none-any.whl.metadata Downloading tqdm-4.66.1-py3-none-any.whl.metadata (57 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 57.6/57.6 kB 3.2 MB/s eta 0:00:00 Collecting ultralytics>=8.0.147 (from -r requirements.txt (line 18)) Obtaining dependency information for ultralytics>=8.0.147 from https://files.pythonhosted.org/packages/09/bf/86e16bfb2c886899a9da0c2589689ef56041b1c04acbccee45614fe7c166/ultralytics-8.0.154-py3-none-any.whl.metadata Downloading ultralytics-8.0.154-py3-none-any.whl.metadata (28 kB) Collecting pandas>=1.1.4 (from -r requirements.txt (line 27)) Obtaining dependency information for pandas>=1.1.4 from https://files.pythonhosted.org/packages/9e/71/756a1be6bee0209d8c0d8c5e3b9fc72c00373f384a4017095ec404aec3ad/pandas-2.0.3-cp311-cp311-win_amd64.whl.metadata Downloading pandas-2.0.3-cp311-cp311-win_amd64.whl.metadata (18 kB) Collecting seaborn>=0.11.0 (from -r requirements.txt (line 28)) Downloading seaborn-0.12.2-py3-none-any.whl (293 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 293.3/293.3 kB ? eta 0:00:00 Requirement already satisfied: setuptools>=65.5.1 in c:\users\a\.conda\envs\yolov5\lib\site-packages (from -r requirements.txt (line 42)) (68.0.0) Collecting gitdb<5,>=4.0.1 (from gitpython>=3.1.30->-r requirements.txt (line 5)) Downloading gitdb-4.0.10-py3-none-any.whl (62 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.7/62.7 kB ? eta 0:00:00 Collecting contourpy>=1.0.1 (from matplotlib>=3.3->-r requirements.txt (line 6)) Obtaining dependency information for contourpy>=1.0.1 from https://files.pythonhosted.org/packages/16/09/989b982322439faa4bafffcd669e6f942b38fee897c2664c987bcd091dec/contourpy-1.1.0-cp311-cp311-win_amd64.whl.metadata Downloading contourpy-1.1.0-cp311-cp311-win_amd64.whl.metadata (5.7 kB) Collecting cycler>=0.10 (from matplotlib>=3.3->-r requirements.txt (line 6)) Downloading cycler-0.11.0-py3-none-any.whl (6.4 kB) Collecting fonttools>=4.22.0 (from matplotlib>=3.3->-r requirements.txt (line 6)) Obtaining dependency information for fonttools>=4.22.0 from https://files.pythonhosted.org/packages/52/65/aaa3d2b7a292d93cc2cf1c534d03ba3f744e480f15b3b2ab6ad68189f7ee/fonttools-4.42.0-cp311-cp311-win_amd64.whl.metadata Downloading fonttools-4.42.0-cp311-cp311-win_amd64.whl.metadata (153 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 153.7/153.7 kB ? eta 0:00:00 Collecting kiwisolver>=1.0.1 (from matplotlib>=3.3->-r requirements.txt (line 6)) Downloading kiwisolver-1.4.4-cp311-cp311-win_amd64.whl (55 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 55.4/55.4 kB ? eta 0:00:00 Collecting packaging>=20.0 (from matplotlib>=3.3->-r requirements.txt (line 6)) Downloading packaging-23.1-py3-none-any.whl (48 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 48.9/48.9 kB ? eta 0:00:00 Collecting pyparsing<3.1,>=2.3.1 (from matplotlib>=3.3->-r requirements.txt (line 6)) Downloading pyparsing-3.0.9-py3-none-any.whl (98 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.3/98.3 kB ? eta 0:00:00 Collecting python-dateutil>=2.7 (from matplotlib>=3.3->-r requirements.txt (line 6)) Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 247.7/247.7 kB 15.8 MB/s eta 0:00:00 Collecting charset-normalizer<4,>=2 (from requests>=2.23.0->-r requirements.txt (line 12)) Obtaining dependency information for charset-normalizer<4,>=2 from https://files.pythonhosted.org/packages/91/6e/db0e545302bf93b6dbbdc496dd192c7f8e8c3bb1584acba069256d8b51d4/charset_normalizer-3.2.0-cp311-cp311-win_amd64.whl.metadata Downloading charset_normalizer-3.2.0-cp311-cp311-win_amd64.whl.metadata (31 kB) Collecting idna<4,>=2.5 (from requests>=2.23.0->-r requirements.txt (line 12)) Downloading idna-3.4-py3-none-any.whl (61 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.5/61.5 kB ? eta 0:00:00 Collecting urllib3<3,>=1.21.1 (from requests>=2.23.0->-r requirements.txt (line 12)) Obtaining dependency information for urllib3<3,>=1.21.1 from https://files.pythonhosted.org/packages/9b/81/62fd61001fa4b9d0df6e31d47ff49cfa9de4af03adecf339c7bc30656b37/urllib3-2.0.4-py3-none-any.whl.metadata Downloading urllib3-2.0.4-py3-none-any.whl.metadata (6.6 kB) Collecting certifi>=2017.4.17 (from requests>=2.23.0->-r requirements.txt (line 12)) Obtaining dependency information for certifi>=2017.4.17 from https://files.pythonhosted.org/packages/4c/dd/2234eab22353ffc7d94e8d13177aaa050113286e93e7b40eae01fbf7c3d9/certifi-2023.7.22-py3-none-any.whl.metadata Downloading certifi-2023.7.22-py3-none-any.whl.metadata (2.2 kB) Collecting filelock (from torch>=1.8.0->-r requirements.txt (line 15)) Obtaining dependency information for filelock from https://files.pythonhosted.org/packages/00/45/ec3407adf6f6b5bf867a4462b2b0af27597a26bd3cd6e2534cb6ab029938/filelock-3.12.2-py3-none-any.whl.metadata Downloading filelock-3.12.2-py3-none-any.whl.metadata (2.7 kB) Collecting typing-extensions (from torch>=1.8.0->-r requirements.txt (line 15)) Obtaining dependency information for typing-extensions from https://files.pythonhosted.org/packages/ec/6b/63cc3df74987c36fe26157ee12e09e8f9db4de771e0f3404263117e75b95/typing_extensions-4.7.1-py3-none-any.whl.metadata Downloading typing_extensions-4.7.1-py3-none-any.whl.metadata (3.1 kB) Collecting sympy (from torch>=1.8.0->-r requirements.txt (line 15)) Downloading sympy-1.12-py3-none-any.whl (5.7 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.7/5.7 MB 61.0 MB/s eta 0:00:00 Collecting networkx (from torch>=1.8.0->-r requirements.txt (line 15)) Downloading networkx-3.1-py3-none-any.whl (2.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 128.9 MB/s eta 0:00:00 Collecting jinja2 (from torch>=1.8.0->-r requirements.txt (line 15)) Downloading Jinja2-3.1.2-py3-none-any.whl (133 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.1/133.1 kB ? eta 0:00:00 Collecting colorama (from tqdm>=4.64.0->-r requirements.txt (line 17)) Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB) Collecting py-cpuinfo (from ultralytics>=8.0.147->-r requirements.txt (line 18)) Downloading py_cpuinfo-9.0.0-py3-none-any.whl (22 kB) Collecting pytz>=2020.1 (from pandas>=1.1.4->-r requirements.txt (line 27)) Downloading pytz-2023.3-py2.py3-none-any.whl (502 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 502.3/502.3 kB ? eta 0:00:00 Collecting tzdata>=2022.1 (from pandas>=1.1.4->-r requirements.txt (line 27)) Downloading tzdata-2023.3-py2.py3-none-any.whl (341 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 341.8/341.8 kB ? eta 0:00:00 Collecting smmap<6,>=3.0.1 (from gitdb<5,>=4.0.1->gitpython>=3.1.30->-r requirements.txt (line 5)) Downloading smmap-5.0.0-py3-none-any.whl (24 kB) Collecting six>=1.5 (from python-dateutil>=2.7->matplotlib>=3.3->-r requirements.txt (line 6)) Downloading six-1.16.0-py2.py3-none-any.whl (11 kB) Collecting MarkupSafe>=2.0 (from jinja2->torch>=1.8.0->-r requirements.txt (line 15)) Obtaining dependency information for MarkupSafe>=2.0 from https://files.pythonhosted.org/packages/be/bb/08b85bc194034efbf572e70c3951549c8eca0ada25363afc154386b5390a/MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl.metadata Downloading MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl.metadata (3.1 kB) Collecting mpmath>=0.19 (from sympy->torch>=1.8.0->-r requirements.txt (line 15)) Downloading mpmath-1.3.0-py3-none-any.whl (536 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 536.2/536.2 kB 35.1 MB/s eta 0:00:00 Downloading GitPython-3.1.32-py3-none-any.whl (188 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 188.5/188.5 kB ? eta 0:00:00 Downloading matplotlib-3.7.2-cp311-cp311-win_amd64.whl (7.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.5/7.5 MB 34.2 MB/s eta 0:00:00 Downloading numpy-1.25.2-cp311-cp311-win_amd64.whl (15.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 15.5/15.5 MB 72.5 MB/s eta 0:00:00 Downloading opencv_python-4.8.0.76-cp37-abi3-win_amd64.whl (38.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 38.1/38.1 MB 65.5 MB/s eta 0:00:00 Downloading Pillow-10.0.0-cp311-cp311-win_amd64.whl (2.5 MB) Downloading PyYAML-6.0.1-cp311-cp311-win_amd64.whl (144 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 144.7/144.7 kB ? eta 0:00:00 Downloading requests-2.31.0-py3-none-any.whl (62 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.6/62.6 kB ? eta 0:00:00 Downloading scipy-1.11.1-cp311-cp311-win_amd64.whl (44.0 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 44.0/44.0 MB 59.4 MB/s eta 0:00:00 Downloading tqdm-4.66.1-py3-none-any.whl (78 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 78.3/78.3 kB ? eta 0:00:00 Downloading ultralytics-8.0.154-py3-none-any.whl (612 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 613.0/613.0 kB 40.2 MB/s eta 0:00:00 Downloading pandas-2.0.3-cp311-cp311-win_amd64.whl (10.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.6/10.6 MB 72.5 MB/s eta 0:00:00 Downloading certifi-2023.7.22-py3-none-any.whl (158 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 158.3/158.3 kB 9.3 MB/s eta 0:00:00 Downloading charset_normalizer-3.2.0-cp311-cp311-win_amd64.whl (96 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 96.6/96.6 kB ? eta 0:00:00 Downloading contourpy-1.1.0-cp311-cp311-win_amd64.whl (470 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 470.9/470.9 kB 28.8 MB/s eta 0:00:00 Downloading fonttools-4.42.0-cp311-cp311-win_amd64.whl (2.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 65.8 MB/s eta 0:00:00 Downloading urllib3-2.0.4-py3-none-any.whl (123 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 123.9/123.9 kB ? eta 0:00:00 Downloading filelock-3.12.2-py3-none-any.whl (10 kB) Downloading typing_extensions-4.7.1-py3-none-any.whl (33 kB) Downloading MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl (17 kB) Installing collected packages: pytz, py-cpuinfo, mpmath, urllib3, tzdata, typing-extensions, sympy, smmap, six, PyYAML, pyparsing, psutil, Pillow, packaging, numpy, networkx, MarkupSafe, kiwisolver, idna, fonttools, filelock, cycler, colorama, charset-normalizer, certifi, tqdm, scipy, requests, python-dateutil, opencv-python, jinja2, gitdb, contourpy, torch, pandas, matplotlib, gitpython, torchvision, thop, seaborn, ultralytics Successfully installed MarkupSafe-2.1.3 Pillow-10.0.0 PyYAML-6.0.1 certifi-2023.7.22 charset-normalizer-3.2.0 colorama-0.4.6 contourpy-1.1.0 cycler-0.11.0 filelock-3.12.2 fonttools-4.42.0 gitdb-4.0.10 gitpython-3.1.32 idna-3.4 jinja2-3.1.2 kiwisolver-1.4.4 matplotlib-3.7.2 mpmath-1.3.0 networkx-3.1 numpy-1.25.2 opencv-python-4.8.0.76 packaging-23.1 pandas-2.0.3 psutil-5.9.5 py-cpuinfo-9.0.0 pyparsing-3.0.9 python-dateutil-2.8.2 pytz-2023.3 requests-2.31.0 scipy-1.11.1 seaborn-0.12.2 six-1.16.0 smmap-5.0.0 sympy-1.12 thop-0.1.1.post2209072238 torch-2.0.1 torchvision-0.15.2 tqdm-4.66.1 typing-extensions-4.7.1 tzdata-2023.3 ultralytics-8.0.154 urllib3-2.0.4 (yolov5) PS C:\work\yolo_test\yolov5>
できたっぽい。
画像物体認識
YOLOv5のリポジトリには、すぐ動かせるPythonコード(detect.py)があるので、それを使う。
↓実行コマンド
python detect.py --source rtsp://USER:PASSWORD@192.168.1.29 --view-img
detect.pyにはいくつかオプション引数があるが、必要最低限だけ指定。
--source
: 画像入力元の指定
今回は、EZVIZ CP1のRTSPのURLを指定--view-img
: 物体認識結果をリアルタイムに画像で見るかどうか
これを指定すると、OpenCVのimshowで出てくるようなウィンドウが出て、撮影画像に認識した物体の枠を描画したものが表示される。
動画データとしても保存されていた。
※USER
とPASSWORD
は実際に使ったものとは違う。
何を入れればいいかは前回の記事参照。
実行結果。
結果ログ一部。(クリックで結果ログが全部表示されます。)
(yolov5) PS C:\work\yolo_test\yolov5> python detect.py --source rtsp://USER:PASSWORD@192.168.1.29 --view-img detect: weights=yolov5s.pt, source=rtsp://USER:PASSWORD@192.168.1.29, data=data\coco128.yaml, imgsz=[640, 640], conf_thres=0.25, iou_thres=0.45, max_det=1000, device=, view_img=True, save_txt=False, save_conf=False, save_crop=False, nosave=False, classes=None, agnostic_nms=False, augment=False, visualize=False, update=False, project=runs\detect, name=exp, exist_ok=False, line_thickness=3, hide_labels=False, hide_conf=False, half=False, dnn=False, vid_stride=1 YOLOv5 v7.0-210-gdd10481 Python-3.11.4 torch-2.0.1+cpu CPU Fusing layers... YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients 1/1: rtsp://USER:PASSWORD@192.168.1.29... Success (inf frames 2304x1296 at 25.00 FPS) 0: 384x640 4 cars, 3 trucks, 175.5ms 0: 384x640 4 cars, 3 trucks, 148.7ms 0: 384x640 4 cars, 3 trucks, 144.9ms 0: 384x640 4 cars, 3 trucks, 129.8ms 0: 384x640 4 cars, 3 trucks, 133.4ms ... 0: 384x640 2 persons, 3 cars, 1 bus, 2 trucks, 113.8ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 113.0ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 115.3ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 114.6ms 0: 384x640 1 person, 3 cars, 1 bus, 2 trucks, 1 fire hydrant, 122.4ms 0: 384x640 1 person, 3 cars, 2 buss, 2 trucks, 110.1ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 120.4ms ...
結果ログ全部。
(yolov5) PS C:\work\yolo_test\yolov5> python detect.py --source rtsp://USER:PASSWORD@192.168.1.29 --view-img detect: weights=yolov5s.pt, source=rtsp://USER:PASSWORD@192.168.1.29, data=data\coco128.yaml, imgsz=[640, 640], conf_thres=0.25, iou_thres=0.45, max_det=1000, device=, view_img=True, save_txt=False, save_conf=False, save_crop=False, nosave=False, classes=None, agnostic_nms=False, augment=False, visualize=False, update=False, project=runs\detect, name=exp, exist_ok=False, line_thickness=3, hide_labels=False, hide_conf=False, half=False, dnn=False, vid_stride=1 YOLOv5 v7.0-210-gdd10481 Python-3.11.4 torch-2.0.1+cpu CPU Fusing layers... YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients 1/1: rtsp://USER:PASSWORD@192.168.1.29... Success (inf frames 2304x1296 at 25.00 FPS) 0: 384x640 4 cars, 3 trucks, 175.5ms 0: 384x640 4 cars, 3 trucks, 148.7ms 0: 384x640 4 cars, 3 trucks, 144.9ms 0: 384x640 4 cars, 3 trucks, 129.8ms 0: 384x640 4 cars, 3 trucks, 133.4ms 0: 384x640 4 cars, 3 trucks, 126.4ms 0: 384x640 4 cars, 1 bus, 3 trucks, 104.2ms 0: 384x640 4 cars, 3 trucks, 109.0ms 0: 384x640 4 cars, 3 trucks, 111.0ms 0: 384x640 4 cars, 3 trucks, 112.2ms 0: 384x640 4 cars, 3 trucks, 109.8ms 0: 384x640 4 cars, 3 trucks, 115.2ms 0: 384x640 4 cars, 3 trucks, 114.6ms 0: 384x640 4 cars, 3 trucks, 100.4ms 0: 384x640 4 cars, 3 trucks, 113.6ms 0: 384x640 4 cars, 3 trucks, 110.9ms 0: 384x640 4 cars, 3 trucks, 111.0ms 0: 384x640 4 cars, 3 trucks, 99.8ms 0: 384x640 4 cars, 3 trucks, 99.2ms 0: 384x640 4 cars, 3 trucks, 108.1ms 0: 384x640 4 cars, 3 trucks, 110.5ms 0: 384x640 4 cars, 1 bus, 3 trucks, 116.2ms 0: 384x640 4 cars, 3 trucks, 121.4ms 0: 384x640 4 cars, 3 trucks, 110.7ms 0: 384x640 2 persons, 4 cars, 3 trucks, 108.3ms 0: 384x640 2 persons, 4 cars, 2 trucks, 1 skateboard, 97.2ms 0: 384x640 2 persons, 5 cars, 2 trucks, 106.1ms 0: 384x640 2 persons, 5 cars, 3 trucks, 111.4ms 0: 384x640 2 persons, 5 cars, 3 trucks, 113.8ms 0: 384x640 2 persons, 5 cars, 2 trucks, 107.3ms 0: 384x640 2 persons, 5 cars, 3 trucks, 114.0ms 0: 384x640 2 persons, 5 cars, 3 trucks, 106.5ms 0: 384x640 2 persons, 5 cars, 2 trucks, 119.2ms 0: 384x640 2 persons, 5 cars, 2 trucks, 1 skateboard, 103.7ms 0: 384x640 2 persons, 5 cars, 2 trucks, 102.0ms 0: 384x640 2 persons, 5 cars, 2 trucks, 1 skateboard, 109.8ms 0: 384x640 2 persons, 5 cars, 2 trucks, 1 skateboard, 108.6ms 0: 384x640 2 persons, 5 cars, 2 trucks, 1 skateboard, 102.2ms 0: 384x640 2 persons, 5 cars, 3 trucks, 107.1ms 0: 384x640 2 persons, 5 cars, 2 trucks, 105.0ms 0: 384x640 2 persons, 5 cars, 2 trucks, 130.3ms 0: 384x640 2 persons, 5 cars, 2 trucks, 127.7ms 0: 384x640 2 persons, 5 cars, 2 trucks, 1 skateboard, 116.5ms 0: 384x640 1 person, 3 cars, 2 trucks, 1 fire hydrant, 1 skateboard, 123.3ms 0: 384x640 1 person, 3 cars, 2 trucks, 1 fire hydrant, 1 skateboard, 115.4ms 0: 384x640 1 person, 4 cars, 2 trucks, 1 fire hydrant, 1 skateboard, 115.1ms 0: 384x640 1 person, 4 cars, 3 trucks, 1 fire hydrant, 111.5ms 0: 384x640 1 person, 2 cars, 2 trucks, 1 skateboard, 114.1ms 0: 384x640 1 person, 3 cars, 2 trucks, 1 skateboard, 114.3ms 0: 384x640 1 person, 2 cars, 3 trucks, 105.4ms 0: 384x640 1 person, 2 cars, 3 trucks, 111.4ms 0: 384x640 1 person, 4 cars, 3 trucks, 127.4ms 0: 384x640 1 person, 2 cars, 3 trucks, 110.6ms 0: 384x640 2 persons, 2 cars, 3 trucks, 107.1ms 0: 384x640 2 persons, 2 cars, 3 trucks, 108.7ms 0: 384x640 2 persons, 2 cars, 3 trucks, 105.7ms 0: 384x640 1 person, 3 cars, 2 trucks, 1 fire hydrant, 108.4ms 0: 384x640 1 person, 3 cars, 2 trucks, 1 fire hydrant, 1 suitcase, 108.8ms 0: 384x640 1 person, 3 cars, 2 trucks, 1 fire hydrant, 112.3ms 0: 384x640 1 person, 3 cars, 2 trucks, 1 fire hydrant, 108.1ms 0: 384x640 2 persons, 3 cars, 2 trucks, 1 fire hydrant, 111.5ms 0: 384x640 1 person, 3 cars, 2 trucks, 113.6ms 0: 384x640 2 persons, 3 cars, 2 trucks, 102.7ms 0: 384x640 2 persons, 3 cars, 2 trucks, 112.1ms 0: 384x640 2 persons, 3 cars, 1 bus, 1 truck, 103.1ms 0: 384x640 2 persons, 3 cars, 1 bus, 1 truck, 111.1ms 0: 384x640 2 persons, 3 cars, 3 trucks, 108.4ms 0: 384x640 2 persons, 3 cars, 3 trucks, 101.2ms 0: 384x640 2 persons, 3 cars, 3 trucks, 108.8ms 0: 384x640 2 persons, 4 cars, 2 trucks, 109.0ms 0: 384x640 2 persons, 4 cars, 2 trucks, 107.7ms 0: 384x640 2 persons, 3 cars, 2 trucks, 113.8ms 0: 384x640 2 persons, 3 cars, 2 trucks, 106.9ms 0: 384x640 2 persons, 3 cars, 2 trucks, 110.1ms 0: 384x640 2 persons, 3 cars, 2 trucks, 112.8ms 0: 384x640 2 persons, 3 cars, 3 trucks, 128.3ms 0: 384x640 2 persons, 3 cars, 3 trucks, 101.9ms 0: 384x640 2 persons, 3 cars, 3 trucks, 112.8ms 0: 384x640 2 persons, 3 cars, 3 trucks, 110.5ms 0: 384x640 2 persons, 3 cars, 3 trucks, 99.2ms 0: 384x640 2 persons, 3 cars, 3 trucks, 109.0ms 0: 384x640 2 persons, 3 cars, 3 trucks, 113.6ms 0: 384x640 2 persons, 3 cars, 3 trucks, 124.8ms 0: 384x640 2 persons, 3 cars, 1 bus, 3 trucks, 110.7ms 0: 384x640 2 persons, 3 cars, 1 bus, 3 trucks, 111.7ms 0: 384x640 2 persons, 3 cars, 1 bus, 3 trucks, 110.9ms 0: 384x640 2 persons, 3 cars, 1 bus, 3 trucks, 109.7ms 0: 384x640 1 person, 3 cars, 1 bus, 3 trucks, 104.2ms 0: 384x640 1 person, 3 cars, 1 bus, 2 trucks, 129.7ms 0: 384x640 1 person, 3 cars, 1 bus, 2 trucks, 113.6ms 0: 384x640 1 person, 3 cars, 1 bus, 2 trucks, 110.7ms 0: 384x640 1 person, 3 cars, 1 bus, 3 trucks, 117.6ms 0: 384x640 1 person, 3 cars, 1 bus, 3 trucks, 112.9ms 0: 384x640 1 person, 3 cars, 1 bus, 3 trucks, 110.9ms 0: 384x640 1 person, 3 cars, 1 bus, 3 trucks, 104.0ms 0: 384x640 2 persons, 3 cars, 1 bus, 3 trucks, 112.1ms 0: 384x640 2 persons, 3 cars, 1 bus, 2 trucks, 113.8ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 113.0ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 115.3ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 114.6ms 0: 384x640 1 person, 3 cars, 1 bus, 2 trucks, 1 fire hydrant, 122.4ms 0: 384x640 1 person, 3 cars, 2 buss, 2 trucks, 110.1ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 120.4ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 110.1ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 113.3ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 107.6ms 0: 384x640 1 person, 3 cars, 2 buss, 1 truck, 114.1ms 0: 384x640 1 person, 3 cars, 2 buss, 1 truck, 113.7ms 0: 384x640 1 person, 3 cars, 2 buss, 1 truck, 111.4ms 0: 384x640 1 person, 3 cars, 2 buss, 1 truck, 116.1ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 108.6ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 117.5ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 fire hydrant, 109.0ms 0: 384x640 2 persons, 3 cars, 2 buss, 1 truck, 109.5ms 0: 384x640 2 persons, 3 cars, 2 buss, 1 truck, 1 fire hydrant, 122.5ms 0: 384x640 2 persons, 3 cars, 2 buss, 2 trucks, 1 fire hydrant, 122.3ms 0: 384x640 2 persons, 3 cars, 2 buss, 1 truck, 1 fire hydrant, 112.7ms 0: 384x640 2 persons, 3 cars, 2 buss, 2 trucks, 122.9ms 0: 384x640 2 persons, 3 cars, 2 buss, 1 truck, 113.2ms 0: 384x640 2 persons, 3 cars, 1 bus, 2 trucks, 116.8ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 103.2ms 0: 384x640 2 persons, 3 cars, 2 buss, 1 truck, 110.3ms 0: 384x640 2 persons, 2 cars, 2 buss, 1 truck, 110.0ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 108.1ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 121.1ms 0: 384x640 2 persons, 3 cars, 2 buss, 2 trucks, 112.3ms 0: 384x640 2 persons, 2 cars, 2 buss, 1 truck, 106.6ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 112.1ms 0: 384x640 2 persons, 2 cars, 2 buss, 1 truck, 116.3ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 115.3ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 114.3ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 124.8ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 109.2ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 117.4ms 0: 384x640 2 persons, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 115.0ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 108.7ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 111.1ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 108.6ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 teddy bear, 112.5ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 115.0ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 skateboard, 108.3ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 113.3ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 fire hydrant, 1 skateboard, 125.2ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 fire hydrant, 2 skateboards, 108.7ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 fire hydrant, 1 skateboard, 108.6ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 2 skateboards, 108.9ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 114.1ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 112.5ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 113.6ms 0: 384x640 2 persons, 1 car, 2 buss, 2 trucks, 1 skateboard, 102.8ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 skateboard, 108.7ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 skateboard, 110.6ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 skateboard, 112.1ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 1 skateboard, 107.1ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 2 skateboards, 112.8ms 0: 384x640 1 person, 1 car, 2 buss, 2 trucks, 2 skateboards, 107.3ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 skateboard, 108.6ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 skateboard, 114.9ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 skateboard, 111.9ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 skateboard, 105.9ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 skateboard, 125.7ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 skateboard, 110.2ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 fire hydrant, 1 skateboard, 117.5ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 fire hydrant, 1 skateboard, 106.3ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 fire hydrant, 1 skateboard, 111.1ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 fire hydrant, 1 skateboard, 115.4ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 fire hydrant, 1 skateboard, 1 teddy bear, 107.9ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 fire hydrant, 1 skateboard, 123.9ms 0: 384x640 1 person, 2 buss, 2 trucks, 1 fire hydrant, 1 teddy bear, 110.1ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 106.8ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 1 teddy bear, 114.0ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 108.2ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 1 teddy bear, 110.5ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 126.0ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 100.5ms 0: 384x640 2 persons, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 110.3ms 0: 384x640 1 person, 2 cars, 1 bus, 1 truck, 1 fire hydrant, 115.5ms 0: 384x640 1 person, 2 cars, 1 bus, 1 truck, 1 fire hydrant, 111.4ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 109.4ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 109.1ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 110.7ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 115.0ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 107.4ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 108.5ms 0: 384x640 1 person, 2 cars, 2 buss, 2 trucks, 1 fire hydrant, 108.0ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 124.4ms 0: 384x640 1 person, 2 cars, 1 bus, 1 truck, 1 fire hydrant, 111.5ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 100.5ms 0: 384x640 1 person, 2 cars, 1 bus, 1 truck, 1 fire hydrant, 107.3ms 0: 384x640 1 person, 2 cars, 1 bus, 1 truck, 1 fire hydrant, 116.6ms 0: 384x640 1 person, 2 cars, 1 bus, 1 truck, 1 fire hydrant, 121.2ms 0: 384x640 1 person, 2 cars, 2 buss, 1 truck, 1 fire hydrant, 112.1ms 0: 384x640 1 person, 2 cars, 1 bus, 1 truck, 1 fire hydrant, 110.9ms 0: 384x640 1 person, 2 cars, 1 bus, 1 truck, 1 fire hydrant, 116.7ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 113.2ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 105.5ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 112.1ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 108.2ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 111.1ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 1 fire hydrant, 121.6ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 115.5ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 1 fire hydrant, 119.1ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 106.3ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 110.2ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 1 fire hydrant, 135.0ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 1 fire hydrant, 113.5ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 112.0ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 111.6ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 120.3ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 118.0ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 107.4ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 106.4ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 109.7ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 113.0ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 114.5ms 0: 384x640 1 person, 1 car, 1 bus, 2 trucks, 110.8ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 109.7ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 107.0ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 123.5ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 126.1ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 118.7ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 109.1ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 122.9ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 108.6ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 108.3ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 110.4ms 0: 384x640 1 person, 2 cars, 1 bus, 2 trucks, 113.3ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 113.9ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 115.9ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 114.3ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 1 skateboard, 108.9ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 102.7ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 106.9ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 118.8ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 114.5ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 109.7ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 110.1ms 0: 384x640 2 persons, 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 106.5ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 108.9ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 108.0ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 112.5ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 122.6ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 112.8ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 112.5ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 139.6ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 143.2ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 129.2ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 112.0ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 179.1ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 134.4ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 132.0ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 124.7ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 127.6ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 124.9ms 0: 384x640 2 cars, 1 bus, 2 trucks, 1 fire hydrant, 146.1ms ...
※このgifは、容量削減のため、フレーム間引きしています。
静止画も一部。
- 無事、RTSPを受信して物体認識ができた。
- 特に処理を止める手段はないようだったので、終わるときはCtrl+Cで強制終了した。
- トミカを車として認識してくれた。
- 車の中でも、car、truck、busの分類があった。
- アンパンマンの小さい人形は、人として認識されることもあったが、fire hydrant(消火栓)になることもあった。
- トミカを動かす手も人として認識された。
以上
環境セットアップで少し手間取ったものの、結構簡単に物体認識ができた。
楽しい。
やることを考えてみて、もう少し続けたい。
ついで
ついでに、子供がカメラの前をうろうろしたときのログ。
記録のために置いておく。
こちらは動画は載せたくないので、ログだけで。
人の認識ができている。
結果ログ一部。(クリックで結果ログが全部表示されます。)
(yolov5) PS C:\work\yolo_test\yolov5> python detect.py --source rtsp://USER:PASSWORD@192.168.1.29 --view-img detect: weights=yolov5s.pt, source=rtsp://USER:PASSWORD@192.168.1.29, data=data\coco128.yaml, imgsz=[640, 640], conf_thres=0.25, iou_thres=0.45, max_det=1000, device=, view_img=True, save_txt=False, save_conf=False, save_crop=False, nosave=False, classes=None, agnostic_nms=False, augment=False, visualize=False, update=False, project=runs\detect, name=exp, exist_ok=False, line_thickness=3, hide_labels=False, hide_conf=False, half=False, dnn=False, vid_stride=1 YOLOv5 v7.0-210-gdd10481 Python-3.11.4 torch-2.0.1+cpu CPU Fusing layers... YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients 1/1: rtsp://USER:PASSWORD@192.168.1.29... Success (inf frames 2304x1296 at 25.00 FPS) 0: 384x640 1 person, 126.9ms 0: 384x640 1 person, 145.1ms 0: 384x640 1 person, 136.3ms 0: 384x640 1 person, 126.6ms 0: 384x640 1 person, 131.3ms ... 0: 384x640 1 person, 104.8ms 0: 384x640 1 person, 105.3ms 0: 384x640 1 person, 100.5ms 0: 384x640 1 person, 104.2ms 0: 384x640 1 person, 101.4ms 0: 384x640 2 persons, 107.2ms 0: 384x640 1 person, 98.9ms 0: 384x640 2 persons, 119.1ms 0: 384x640 2 persons, 106.0ms 0: 384x640 1 person, 97.7ms 0: 384x640 1 person, 103.6ms 0: 384x640 1 person, 107.9ms 0: 384x640 2 persons, 98.3ms 0: 384x640 1 person, 108.5ms 0: 384x640 2 persons, 112.8ms 0: 384x640 2 persons, 120.2ms 0: 384x640 2 persons, 103.5ms 0: 384x640 2 persons, 102.5ms 0: 384x640 3 persons, 101.0ms 0: 384x640 3 persons, 102.6ms 0: 384x640 2 persons, 102.7ms 0: 384x640 3 persons, 1 bed, 115.9ms 0: 384x640 2 persons, 97.8ms 0: 384x640 2 persons, 1 bed, 102.7ms 0: 384x640 2 persons, 1 bed, 103.1ms 0: 384x640 3 persons, 1 bed, 102.3ms 0: 384x640 2 persons, 1 bed, 101.0ms ...
結果ログ全部。
(yolov5) PS C:\work\yolo_test\yolov5> python detect.py --source rtsp://USER:PASSWORD@192.168.1.29 --view-img detect: weights=yolov5s.pt, source=rtsp://USER:PASSWORD@192.168.1.29, data=data\coco128.yaml, imgsz=[640, 640], conf_thres=0.25, iou_thres=0.45, max_det=1000, device=, view_img=True, save_txt=False, save_conf=False, save_crop=False, nosave=False, classes=None, agnostic_nms=False, augment=False, visualize=False, update=False, project=runs\detect, name=exp, exist_ok=False, line_thickness=3, hide_labels=False, hide_conf=False, half=False, dnn=False, vid_stride=1 YOLOv5 v7.0-210-gdd10481 Python-3.11.4 torch-2.0.1+cpu CPU Fusing layers... YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients 1/1: rtsp://USER:PASSWORD@192.168.1.29... Success (inf frames 2304x1296 at 25.00 FPS) 0: 384x640 1 person, 126.9ms 0: 384x640 1 person, 145.1ms 0: 384x640 1 person, 136.3ms 0: 384x640 1 person, 126.6ms 0: 384x640 1 person, 131.3ms 0: 384x640 1 person, 121.4ms 0: 384x640 1 person, 102.3ms 0: 384x640 1 person, 104.9ms 0: 384x640 1 person, 100.0ms 0: 384x640 1 person, 107.8ms 0: 384x640 1 person, 103.2ms 0: 384x640 1 person, 101.0ms 0: 384x640 1 person, 101.4ms 0: 384x640 1 person, 107.9ms 0: 384x640 1 person, 103.0ms 0: 384x640 1 person, 104.0ms 0: 384x640 1 person, 99.9ms 0: 384x640 1 person, 102.0ms 0: 384x640 1 person, 101.4ms 0: 384x640 1 person, 100.0ms 0: 384x640 1 person, 95.4ms 0: 384x640 1 person, 116.2ms 0: 384x640 2 persons, 102.4ms 0: 384x640 1 person, 102.6ms 0: 384x640 1 person, 102.0ms 0: 384x640 1 person, 98.7ms 0: 384x640 1 person, 91.6ms 0: 384x640 1 person, 105.3ms 0: 384x640 1 person, 115.2ms 0: 384x640 1 person, 1 remote, 102.4ms 0: 384x640 1 person, 101.7ms 0: 384x640 1 person, 98.9ms 0: 384x640 1 person, 1 bench, 1 toothbrush, 101.4ms 0: 384x640 1 person, 100.8ms 0: 384x640 1 person, 1 bench, 1 toothbrush, 100.7ms 0: 384x640 1 person, 116.4ms 0: 384x640 1 person, 108.4ms 0: 384x640 1 person, 1 book, 114.5ms 0: 384x640 1 person, 2 books, 106.1ms 0: 384x640 1 person, 1 bottle, 105.4ms 0: 384x640 1 person, 115.0ms 0: 384x640 1 person, 104.8ms 0: 384x640 1 person, 105.3ms 0: 384x640 1 person, 100.5ms 0: 384x640 1 person, 104.2ms 0: 384x640 1 person, 101.4ms 0: 384x640 2 persons, 107.2ms 0: 384x640 1 person, 98.9ms 0: 384x640 2 persons, 119.1ms 0: 384x640 2 persons, 106.0ms 0: 384x640 1 person, 97.7ms 0: 384x640 1 person, 103.6ms 0: 384x640 1 person, 107.9ms 0: 384x640 2 persons, 98.3ms 0: 384x640 1 person, 108.5ms 0: 384x640 2 persons, 112.8ms 0: 384x640 2 persons, 120.2ms 0: 384x640 2 persons, 103.5ms 0: 384x640 2 persons, 102.5ms 0: 384x640 3 persons, 101.0ms 0: 384x640 3 persons, 102.6ms 0: 384x640 2 persons, 102.7ms 0: 384x640 3 persons, 1 bed, 115.9ms 0: 384x640 2 persons, 97.8ms 0: 384x640 2 persons, 1 bed, 102.7ms 0: 384x640 2 persons, 1 bed, 103.1ms 0: 384x640 3 persons, 1 bed, 102.3ms 0: 384x640 2 persons, 1 bed, 101.0ms 0: 384x640 2 persons, 1 bed, 102.9ms 0: 384x640 3 persons, 1 bed, 118.3ms 0: 384x640 1 person, 1 bed, 106.1ms 0: 384x640 3 persons, 103.9ms 0: 384x640 2 persons, 1 bed, 106.1ms 0: 384x640 3 persons, 112.8ms 0: 384x640 3 persons, 1 bed, 121.9ms 0: 384x640 2 persons, 115.7ms 0: 384x640 2 persons, 101.9ms 0: 384x640 2 persons, 108.7ms 0: 384x640 2 persons, 101.0ms 0: 384x640 2 persons, 1 bed, 104.7ms 0: 384x640 2 persons, 1 bed, 95.3ms 0: 384x640 1 person, 1 bed, 100.7ms 0: 384x640 1 person, 118.1ms 0: 384x640 1 person, 100.8ms 0: 384x640 1 person, 112.8ms 0: 384x640 1 person, 102.5ms 0: 384x640 1 person, 101.9ms 0: 384x640 1 person, 95.2ms 0: 384x640 2 persons, 105.7ms 0: 384x640 1 person, 122.1ms 0: 384x640 1 person, 101.0ms 0: 384x640 1 person, 100.7ms 0: 384x640 1 person, 112.0ms 0: 384x640 3 persons, 111.3ms 0: 384x640 2 persons, 104.9ms 0: 384x640 1 person, 106.8ms 0: 384x640 1 person, 102.2ms 0: 384x640 1 person, 108.7ms 0: 384x640 1 person, 104.7ms 0: 384x640 1 person, 90.2ms 0: 384x640 1 person, 98.1ms 0: 384x640 1 person, 103.5ms 0: 384x640 1 person, 104.1ms 0: 384x640 1 person, 108.6ms 0: 384x640 1 person, 113.7ms 0: 384x640 1 person, 105.1ms 0: 384x640 1 person, 103.0ms 0: 384x640 2 persons, 105.8ms 0: 384x640 2 persons, 101.6ms 0: 384x640 2 persons, 102.7ms 0: 384x640 2 persons, 119.5ms 0: 384x640 1 person, 102.8ms 0: 384x640 2 persons, 1 toothbrush, 101.2ms 0: 384x640 1 person, 107.1ms 0: 384x640 1 person, 113.5ms 0: 384x640 1 person, 105.8ms 0: 384x640 1 person, 1 cup, 104.2ms 0: 384x640 2 persons, 1 chair, 108.7ms 0: 384x640 2 persons, 104.5ms 0: 384x640 2 persons, 101.2ms 0: 384x640 1 bed, 105.6ms 0: 384x640 1 person, 1 bed, 102.9ms 0: 384x640 (no detections), 105.3ms 0: 384x640 (no detections), 115.1ms 0: 384x640 (no detections), 103.6ms 0: 384x640 (no detections), 107.4ms 0: 384x640 (no detections), 103.4ms 0: 384x640 (no detections), 101.3ms 0: 384x640 (no detections), 101.9ms 0: 384x640 (no detections), 101.8ms 0: 384x640 (no detections), 117.4ms 0: 384x640 (no detections), 106.6ms 0: 384x640 (no detections), 102.9ms 0: 384x640 (no detections), 102.0ms 0: 384x640 (no detections), 103.6ms 0: 384x640 (no detections), 102.8ms 0: 384x640 (no detections), 101.9ms 0: 384x640 (no detections), 115.6ms 0: 384x640 (no detections), 99.5ms 0: 384x640 (no detections), 98.7ms 0: 384x640 (no detections), 101.1ms 0: 384x640 (no detections), 103.8ms 0: 384x640 (no detections), 111.2ms 0: 384x640 (no detections), 109.7ms 0: 384x640 (no detections), 113.8ms 0: 384x640 (no detections), 104.3ms 0: 384x640 (no detections), 96.0ms 0: 384x640 (no detections), 109.0ms 0: 384x640 (no detections), 104.3ms 0: 384x640 (no detections), 102.8ms 0: 384x640 (no detections), 101.9ms 0: 384x640 (no detections), 114.4ms 0: 384x640 (no detections), 91.6ms 0: 384x640 (no detections), 104.1ms 0: 384x640 1 person, 102.2ms 0: 384x640 2 persons, 99.6ms 0: 384x640 2 persons, 1 teddy bear, 105.9ms 0: 384x640 2 persons, 1 teddy bear, 103.6ms 0: 384x640 2 persons, 1 teddy bear, 113.6ms 0: 384x640 2 persons, 102.0ms 0: 384x640 3 persons, 102.0ms 0: 384x640 2 persons, 103.1ms 0: 384x640 2 persons, 101.5ms 0: 384x640 2 persons, 1 bed, 102.6ms 0: 384x640 2 persons, 1 bed, 99.7ms 0: 384x640 2 persons, 1 bed, 89.5ms 0: 384x640 2 persons, 1 bed, 102.3ms 0: 384x640 2 persons, 1 bed, 106.4ms 0: 384x640 2 persons, 1 bed, 106.6ms 0: 384x640 2 persons, 1 bed, 102.5ms 0: 384x640 2 persons, 1 bed, 141.0ms 0: 384x640 2 persons, 1 bed, 128.0ms 0: 384x640 2 persons, 1 bed, 117.4ms 0: 384x640 2 persons, 1 bed, 125.5ms 0: 384x640 2 persons, 109.8ms 0: 384x640 2 persons, 109.2ms 0: 384x640 2 persons, 109.7ms 0: 384x640 2 persons, 1 bed, 109.7ms 0: 384x640 2 persons, 126.8ms 0: 384x640 2 persons, 1 bed, 93.9ms 0: 384x640 2 persons, 1 bed, 112.3ms 0: 384x640 2 persons, 93.9ms 0: 384x640 2 persons, 113.8ms 0: 384x640 1 person, 110.0ms 0: 384x640 1 person, 109.8ms 0: 384x640 2 persons, 94.0ms 0: 384x640 2 persons, 109.2ms 0: 384x640 1 person, 125.4ms 0: 384x640 1 person, 125.5ms 0: 384x640 2 persons, 1 hot dog, 111.1ms 0: 384x640 2 persons, 109.8ms 0: 384x640 2 persons, 115.0ms 0: 384x640 2 persons, 109.8ms 0: 384x640 2 persons, 108.2ms 0: 384x640 1 bed, 109.8ms 0: 384x640 2 persons, 110.4ms 0: 384x640 1 person, 125.5ms 0: 384x640 2 persons, 110.9ms 0: 384x640 2 persons, 111.1ms 0: 384x640 1 person, 109.8ms 0: 384x640 2 persons, 114.4ms 0: 384x640 2 persons, 1 remote, 110.6ms 0: 384x640 2 persons, 125.6ms 0: 384x640 2 persons, 108.1ms 0: 384x640 2 persons, 140.1ms 0: 384x640 2 persons, 1 donut, 149.0ms 0: 384x640 2 persons, 1 donut, 142.2ms 0: 384x640 3 persons, 1 donut, 125.4ms 0: 384x640 1 person, 120.4ms 0: 384x640 3 persons, 140.5ms 0: 384x640 3 persons, 125.8ms 0: 384x640 3 persons, 1 donut, 125.2ms ...