实践日记_我的论文管理方法
我的论文管理方法 zotero下载pdf,我一般看arxiv的文章,然后保存pdf,webav到坚果云 有些需要用思维导图做笔记的,利用mindmaster,那个再说了 针对每一个文献,建立一个连接到obsidian的md文件,这里用一个插件betternote插件,可以自动建立文献同名的md文件并创建在obsidian的文件夹目录下plugins [Zotero Documentation], obsidian使用一个attachment management来管理图片,像typora一样把截图保存在md同名的文件夹下 把文献的pdf建立一个github的仓库,是hexo的模板的仓库,然后定期进行推送到远端,并部署blog网页到个人主页,记得obsidian的图片的格式不是标准的markdown的,所以需要关闭wiki格式,自己查一下什么意思
实践笔记CUDA切换版本
实践笔记CUDA切换版本 如果本地没有cuda,torch安装的时候的cuda-toolkit就已经是cuda环境了,就不需要cuda了 但是如果需要cuda编译一些东西,比如AlphaPose需要cuda编译,就需要cuda安装到本地。 安装之后, 系统变量中多了 ==CUDA_PATH_V9_2== 和 ==NVCUDASAMPLES9_2_ROOT==两个环境变量,然后CUDA_PATH也会变成新的。 NVCUDASAMPLES_ROOT:D:\CUDA Documentation\NVIDIA Corporation\CUDA Samples\v9.2(Samples 的路径) CUDA_PATH _V9_2:D:\CUDA Documentation\NVIDIA GPU Computing Toolkit\CUDA\v9.2(CUDA Documentation 和 CUDA Development 的路径) CUDA_PATH:CUDA_PATH _V9_2的路径 Path中多了两个bin和libvvp两个变量 D:\CUDA...
实践日记_eastMocapInstallUsage
eastMocap Install and Usage easymocap关键点检测模块可以用HRNet或者Openpose 每次改完代码要python setup.py develop–uninstall 再 python setup.py develop Install OpenPose(拼尽全力无法战胜) 12345678910git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.git --depth 1cd openposegit submodule update --init --recursive --remotesudo apt install libopencv-devsudo apt install protobuf-compiler libgoogle-glog-devsudo apt install libboost-all-dev libhdf5-dev libatlas-base-devmkdir buildcd buildcmake .....
深度学习代码学习笔记
深度学习代码学习笔记 setuptools 介绍是什么 简单使用 _ all _是什么 当我们向文件导入某个模块时,导入的是该模块中那些名称不以下划线(单下划线“_”或者双下划线“__”)开头的变量、函数和类。因此,如果我们不想模块文件中的某个成员被引入到其它文件中使用,可以在其名称前添加下划线。 通过在模块文件中设置__all__变量,当其它文件以“from 模块名 import *”的形式导入该模块时,该文件中只能使用__all__ 列表中指定的成员。 12345678910111213141516171819# mytest.py__all__ = ['a','b','d'] #这里不同def a(): print('aaaaa')def b(): print('bbbbb') def c(): # 这里不同 print('ccccc')def _d(): ...
Deque队列
算法_Deque队列的使用 deque 的核心操作演示 1. 创建 deque 1234567from collections import deque# 创建空队列q1 = deque()# 创建包含初始元素的队列q2 = deque([1, 2, 3]) # deque([1, 2, 3])# 指定最大长度(超过自动删除左侧元素)q3 = deque(maxlen=3) 2. 入队操作(添加元素) 123456789q = deque([1, 2])# 右侧添加(最常用)q.append(3) # deque([1, 2, 3])# 左侧添加(层序遍历用不到)q.appendleft(0) # deque([0, 1, 2, 3])# 批量添加q.extend([4, 5]) # deque([0, 1, 2, 3, 4, 5])q.extendleft([-1]) # 注意:extendleft会逆序添加 3. 出队操作(取出元素) 12345q = deque([1, 2, 3, 4])# 左侧取出(层序遍历用这个)x =...
python的一些语法
python的一些语法 List和list . list(小写) Python 内置的列表类型,是语言本身的一部分 用于运行时创建和操作列表 可以直接使用:my_list = list() 或 my_list = [1, 2, 3] 2. List(大写) 来自 typing 模块的类型提示工具 仅用于静态类型检查,不影响程序运行 需要导入:from typing import List 告诉开发者/IDE/类型检查工具:这个变量应该是什么类型 场景:创建/初始化列表/函数参数 1234567891011121314151617# ✅ 正确:使用小写 listmy_list = list() # 创建空列表my_list = [] # 更常用的方式my_list = [1, 2, 3] # 带初始值的列表# ❌ 错误:大写 List 不能这样用my_list = List() # TypeError: 'List' 不能被实例化from...
python的一些语法
二分法 1. 区间定义三选一 123闭区间 [left, right] → left = 0, right = len-1左闭右开 [left, right) → left = 0, right = len开区间 (left, right) → left = -1, right = len 2. 循环条件口诀 123闭区间:left <= right (区间不为空:至少有一个元素)左闭右开:left < right (区间不为空:left < right 时还有元素)开区间:left + 1 < right (区间不为空:中间至少有一个元素) 3. 边界移动口诀 123456当 nums[mid] < target 时:说明 target 在右边,左边界右移当 nums[mid] >= target 时:说明 target 在左边(或就是mid),右边界左移闭区间:left = mid + 1, right = mid - 1左闭右开:left = mid + 1, right = mid开区间:left...
二叉树
二叉树 一、二叉树的基本概念 二叉树(Binary Tree)是一种树形数据结构,它的每个节点最多只能有两个子节点,分别称为左子节点和右子节点。可以把它类比成 “每个家长最多只能有两个孩子” 的家族树。 关键术语: 根节点:树的最顶层节点,没有父节点。 叶子节点:没有任何子节点的节点。 节点的度:节点拥有的子节点数量(二叉树中最多为 2)。 树的深度 / 高度:从根节点到最远叶子节点的路径上的节点数。 满二叉树:所有非叶子节点都有两个子节点,且所有叶子节点在同一层。 完全二叉树:除最后一层外,每一层节点数都达到最大值,最后一层的叶子节点靠左排列。 二、二叉树的经典计算方法与公式(全是递归,学会这个公式就可以) 1. 二叉树的基本定义(Python 实现) 先定义二叉树节点的类,这是所有计算的基础: 123456789101112131415161718class TreeNode: """二叉树节点类""" def __init__(self, val=0, left=None,...
算法_元组的基本用法
元组(tuple)的基本用法 元组不可修改 逗号 , 才是创建元组的关键,括号是可选的(除了空元组)。以下也是元组 列表采用中括号[] 1234567# 元组是不可变的DIRS = (0, 1), (1, 0), (0, -1), (-1, 0)# DIRS[0] = (1, 0) # ❌ 错误!元组不可修改# 如果是列表就可以修改DIRS_LIST = [[0, 1], [1, 0], [0, -1], [-1, 0]]DIRS_LIST[0] = [1, 0] # ✅ 可以修改 Python 元组完全入门指南 创建元组 1234567891011121314151617181920212223242526# 1. 用圆括号创建(最常用)t1 = (1, 2, 3, 4, 5)print(t1) # (1, 2, 3, 4, 5)# 2. 不用括号,直接用逗号分隔t2 = 1, 2, 3, 4, 5print(t2) # (1, 2, 3, 4, 5)# 3. 单元素元组(必须加逗号!)t3 = (1,) # 正确,这是一个元组print(t3) #...
算法_大小根堆
算法_大小根堆的使用 Python 中的堆(heapq)使用详解 Python 中的堆是通过 heapq 模块实现的,默认是小顶堆(最小堆)。 一、堆的基本操作 1. 导入和创建堆 123456789import heapq# 创建一个空堆heap = []# 或者将现有列表转为堆nums = [3, 1, 4, 1, 5, 9, 2]heapq.heapify(nums) # 原地转换,O(n)print(nums) # [1, 1, 2, 3, 5, 9, 4](小顶堆结构) 2. 基本操作 123456789101112131415161718192021222324252627import heapqheap = []# 添加元素heapq.heappush(heap, 5)heapq.heappush(heap, 2)heapq.heappush(heap, 3)heapq.heappush(heap, 1)print(heap) # [1, 2, 3, 5](堆序结构)# 弹出最小元素smallest = heapq.heappop(heap) # 返回...
