Study Log: 尝试在原代码的基础上调用yolov5+deepsort 

  1. 先找到返回目标框的位置、class和置信度
    主要修改getDetectedInfo 从L43开始

在tkinter中显示Numpy数组(aNdarray)图像

[参考此文] (https://www.thinbug.com/q/53308708)

  1. from PIL import ImageTk, Image
  2. 把数组转换为Pillow对象
  3. 把Pillow对象转换为TKimage
PIL_Image = Image.fromarray(np.unit8(aNdarray))
tkImage = ImageTK.PhotoImage(Image = PIL_Image)

debug出现 torch\serialization.py No module named 'models'

  • 2022-03-13

跟踪了好久不知道什么原因,本以为自己的问题是很小众的,难以找到解答。结果一查,发现这里有解答。

Traceback (most recent call last):
...
  File "...\Anaconda3\envs\pytorch\lib\site-packages\torch\serialization.py", line 584, in load
    return _load(opened_zipfile, map_location, pickle_module, **pickle_load_args)
  File "...\Anaconda3\envs\pytorch\lib\site-packages\torch\serialization.py", line 842, in _load
    result = unpickler.load()
ModuleNotFoundError: No module named 'models'

原因分析如下. serialization.py 这个文件从字面意思上理解就是序列化和反序列化了.
由于python是解释性语言, 序列化的文件里面保存的 “命名空间” 是按照yolov5的根目录开始的.
反解析的时候根目录的起始点不同了,导致了找不到models
sys.path 就是为了解决这种目录错乱引起的问题而设.
关于sys.path 我就不详细解释了, 网上的说明很多… 这个很重要.
尤其是在规范化的项目下面. 这个很重要.

出现重复画框的问题

  • 用matplotlib看了一下,这个框是画在了检测结果上,从(L43) result = detector.feedCap(frame, func_status) 出来的时候就有多重框了。

    • 设置断点运行了n次以后再停下来
  • I found that the frames shown look alike.

  • I open the demo.py and found capture.read() is in the loop body.

  • I put ref, frame = capture.read() into the loop body and then it can work.

posted on   Glovesize  阅读(174)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
< 2025年3月 >
23 24 25 26 27 28 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 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示