日积月累

2023-05-16

目录

  • PYTHON
  • UBUNTU
  • TRACKING
  • NEURAL NETWORK
  • MACHINE LEARNING

PYTHON

  1. 有路径的地方要注意区别“/”和“\”。ubuntu使用“/”分割文件夹;
  2. 对于别人的代码,首先仔细阅读readme中的内容,如果需要修改相应的部分来适配自己的环境或者数据集,在修改的过程中要做好标记,便于在代码调试的过程中改正错误(报错通常出现在我们修改代码的字段);
  3. 将原代码中的多数据集训练改为单数据集训练的过程中,不要只顾修改数据集的路径以及注释部分数据集的使用,还要兼顾其它配置数据,防止代码报错;
  4. 程序的进程数(num_works)设为0(使用主进程),通常会首先排除一些错误(由于CPU算力的原因,多线程CPU也可能也不会对多进程产生效果,所以一般设为1或0);
  5. batch_size应从小到大进行实验,这样才能发挥GPU的最佳性能,同时也不会导致程序报错(通常是显存不够用了);
  6. 程序报错了之后,首先将报错原因直接输入搜索引擎查找类似的博客,通常会找到一模一样的报错及有效的解决办法,如果按照博客中的方法不能解决问题,那么就在Traceback的最后一个文件对应的报错位置加“断点”,然后DEBUG分析原因,通常能够很快解决问题。如果还是未能解决问题,考虑将电脑配置严格与原作者的配置对齐;
  7. 将tensor转换为图片
def make_image(i, pred_map, pred_frame, name):
    import matplotlib.pyplot as plt
    import os.path
    plt.imshow(pred_map, 'jet')
    pred_frame.axes.get_yaxis().set_visible(False)
    pred_frame.axes.get_xaxis().set_visible(False)
    pred_frame.spines['top'].set_visible(False)
    pred_frame.spines['right'].set_visible(False)
    pred_frame.spines['left'].set_visible(False)
    pred_frame.spines['bottom'].set_visible(False)

    dir = '/home/cz/USER/SCRIPT/python/pytracking/EXTERNAL/imagefile/feature_map/' + name + '/'
    if not os.path.exists(dir):
        os.makedirs(dir)


    pred_name = dir + name + '_' + str(i) + '.png'
    plt.savefig(pred_name, bbox_inches='tight', pad_inches=0, dpi=150)

def pltshow(pred_map, name):
    import matplotlib.pyplot as plt
    import os
    import numpy
    import PySide2
    dirname = os.path.dirname(PySide2.__file__)
    plugin_path = os.path.join(dirname, 'plugins', 'platforms')
    os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path

    plt.figure(2)
    pred_frame = plt.gca()
    pred_map = pred_map.cpu().detach().numpy()


    if pred_map.ndim == 6:
        for i in range(len(pred_map[0,0,0,:,0,0])):
            pred_mapx = pred_map[0,0,0,i,:,:]
            make_image(i, pred_mapx, pred_frame, name)
    elif pred_map.ndim == 5:
        for i in range(len(pred_map[0,0,:,0,0])):
            pred_mapx = pred_map[0,0,i,:,:]
            make_image(i, pred_mapx, pred_frame, name)
    elif pred_map.ndim == 4:
        for i in range(len(pred_map[0,:,0,0])):
            pred_mapx = pred_map[0,i,:,:]
            make_image(i, pred_mapx, pred_frame, name)
    elif pred_map.ndim == 3:
        for i in range(len(pred_map[:,0,0])):
            pred_mapx = pred_map[i,:,:]
            make_image(i, pred_mapx, pred_frame, name)
    elif pred_map.ndim == 2:
        i = ''
        make_image(i, pred_map, pred_frame, name)
    else:
        print("your pred_map dim is invalidate!")
        raise ValueError


    plt.close(2)


# debug = True # todo c
# if debug: # todo debug
#     from EXTERNAL.code_for_draw.make_feature_map import pltshow
#     pltshow()

UBUNTU

  1. 如要删除ubuntu中建立的文件,需在ubuntu中进行删除,如在windows中删除,可能会造成删除不干净的情况;
  2. U盘强行拔出后再次插入电脑不能识别?分别在终端输入以下两行命令即可:
sudo fdisk -l
sudo ntfsfix /dev/sdb2
  1. 重启可以解决大部分问题;
  2. 卡死时的解决办法(键盘还能用的情况下进行重启):
ctrl+alt+print screen -r-e-i-s-u-b

保持ctrl+alt不动,依次序按下print screen -r-e-i-s-u-b,每个‘-’之间间隔几秒钟;

TRACKING

  1. 通常网络的输入要求图像是一个正方形,对图像进行裁减预处理时,不对边界框的宽高进行直接双倍扩展,而是对宽高加上宽高和的一半,这样做有利于后续缩放环节中将裁减出的图形块缩放为正方形。(以上论述纯属经验所得,没有实际论证!)
  2. 对代码的阅读一定不要放过任何的细节,细节决定成败!(有时候我们的想法不一定不能实现,而是不注意细节导致性能达不到预期!)

NEURAL NETWORK

  1. 对卷积神经网络的参数共享的理解:
    在卷积神经网络出现之前,网络的连接方式主要采用全连接方式,全连接固然可以对图像的每个像素进行加权,但是同时会造成参数量巨大的问题。卷积神经网络利用卷积核在图像上以滑动窗口的方式进行采样,对不同位置的采样来说,与其进行计算的卷积核的权重却是相同的,即权重共享。

MACHINE LEARNING

  1. inductive learning & transductive learning(归纳式学习与直推式学习的区别):
    inductive learning:从已有的数据中归纳出模式来,应用与新的数据和任务。常用的机器学习就是这种模式;
    transductive learning:在给定一些测试数据的情况下,结合已有的训练数据,看能不能推广到测试数据上。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

日积月累 的相关文章

  • 粒子群算法 PSO

    粒子群算法 粒子群算法 PSO 在PSO中 每个优化问题的潜在解都是搜索空间的一只鸟 xff0c 被称为粒子 xff0c 所有的粒子都有一个由适应度函数决定的适值 xff0c 每个粒子还有一个速度决定它们 飞行 的方向和距离 xff0c 然
  • SEATAdocker-compose部署

    docker compose 文件 span class token key atrule version span span class token punctuation span span class token string 39
  • docker-compose 部署ELK

    目录结构 docker compose 文件 span class token key atrule version span span class token punctuation span span class token strin
  • sleuth-zipkin springcloud

    docker compose文件 span class token key atrule zipkin span span class token punctuation span span class token key atrule i
  • 登录session_id用法以及如何验证账号和密码

    登录的时候 xff0c session start session id 61 session id 把 session id储存在本地 xff08 app储存在app xff0c 电脑用cookie储存 xff09 xff0c 再次请求的
  • 正点原子MiniFly Firmware V1.5开源四轴代码硬件部分分析2:motor.c。

    一些参考 xff1a 电机控制基础 定时器基础知识与PWM输出原理 知乎 zhihu com include 34 sys h 34 include 34 delay h 34 include 34 motors h 34 include
  • 使用百度地图POI爬取需要的数据

    目标 xff1a 爬取阿克苏地区内的所有医院数据 一 百度地图开放平台注册 xff0c 获取到AK xff08 1 xff09 在百度地图开放平台完成注册 这个平台是百度地图为开发者提供接口用的 xff0c 有很多其他的功能 xff0c 这
  • RT-Thread 笔记整理

    1 AI xff1a 从前例中学习 xff1b 传统 xff1a 基于经验 2 IOT xff08 internet of things xff09 设备 xff08 传感器将原始数据上传 xff09 gt Gateway网关 gt clo
  • Realsense

    使用说明 xff1a 1 组装拍摄三脚架与滑动条轨 xff0c 将RealSense相机与手机一同装置在三脚架的滑动条轨上 2 连接RealSense到笔记本电脑 xff0c 不需任何配置即可直接适配设备 3 打开PC端软件 xff0c 调

随机推荐