2026年4月份计划汇总
总方向
游泳
英语
开悟比赛
健身
24号
今天周五, 天气晴
分析体态问题, 找到解决方案 :white_check_mark:
练习游泳(自由泳) :white_check_mark:
英语音标(元音部分) :x:
开悟比赛 :x:
目前分析的体态问题: 脚: 左脚轻微扁平足 膝盖: 左边膝盖超伸和外翻, 右边不确定,表现出来的就是O型腿膝盖无法并拢 骨盆: 左高右低(右侧倾) 稍微带有右回旋 胸部: 右边稍微突出也就是右边向前一些 肩部: 圆肩, 肩胛骨有点凸起, 有点驼背, 高低肩(左高右低) 头部: 右回旋, 前伸. 个人情况: 重物用左手, 打球投篮是左手, 但是写字办公吃饭时右手, 也就是大部分费力动作左手发力, 一些无法避免的用右手
原因分析:
骨盆与重心的偏移(右侧承重): 在日常坐姿中,身体重心长期压在右侧(右侧坐骨结节承受更大压力),右侧的骨盆就会被动降低。同时,习惯用左侧身体去承担重物或进行主要发力,左侧的腰方肌、腹外斜肌等侧腹肌肉会因为长期发力而变得极其紧张和强壮。这股强大的拉力会像绳索一样,把左侧骨盆硬生生地“向上提起”。这就完美解 ...
无题
茶类
发酵程度
茶性
核心功效与特点
适用场景 / 人群
绿茶 (如龙井、碧螺春)
不发酵 (0%)
寒性
强效抗氧化、清热去火、强效提神。 保留了最多的维生素和茶多酚。
适合饭后、夏季饮用。不建议空腹喝;胃寒者慎用。
白茶 (如白毫银针、白牡丹)
微发酵 (10%左右)
微寒转平
退热消炎、保护皮肤、明目。 俗语称“一年茶,三年药,七年宝”,老白茶性质更温和。
适合日常饮用,老白茶适合煮饮。
黄茶 (如君山银针)
轻发酵 (10%-20%)
凉性
促进消化、化痰、抗氧化。 经过“闷黄”工艺,比绿茶稍微温和一点点。
适合消化不良、食欲不振时饮用。
乌龙茶/青茶 (如铁观音、大红袍)
半发酵 (30%-60%)
平性
消食去腻、降血脂、刮脂减肥。 含有丰富的单宁酸,能有效分解脂肪。
适合大鱼大肉后解腻,或下午茶提神。
红茶 (如滇红、正山小种)
全发酵 (80%-90%)
温性
暖胃护胃、促进血液循环、平稳提神。
适合早晨空腹、冬季、手脚冰凉者饮用。
黑茶/熟普 (如熟普洱茶、安化黑茶)
后发酵 (100%)
温性
强效消食、降三高、温和刮脂。 经过渥堆 ...
mmdetection框架学习
训练流程
特征提取:backbone+neck
损失计算:head
验证: head.predict->val_evaluator
损失计算
损失计算部分是放在head里面, head又分为anchorfreehead和anchorhead
损失计算步骤:
将特征分别经过分类和回归分支得到分类得分cls_scores和目标框预测bboxes
用cls_scores和bboxes和真实框计算损失
anchorhead
分类得分cls_scores: [batch,锚框数量*类别,H,W]
和目标框预测bboxes: [batch, 锚框数量*4, H,W]
损失计算步骤:
得到锚框
使用锚框根据不同的正负样本分配算法得到哪些是正样本以及他负责预测哪个真实框, 这里就得到标签了也就是lable_target
计算目标框和类别损失
这里有个要注意的点: 坐标计算损失的时候用什么格式去计算, 这个取决于我们的损失函数, 如果是iou这种, 就必须使用绝对坐标去计算, 这种就需要把reg_decoded_bbox设置为true,将预测框解码, 如果是l1这种就需要将真实框去编码 ...
python额外知识
前言
此篇文章主要记录一些环境问题, pip,conda的使用这些
pip
包安装规则
如果包不存在,则安装符合要求的最新版本, 可以通过下面命令查看此次安装的包的具体包版本, 也能查看当前源有哪些版本
1pip index versions 包名[范围]
如果包存在且符合要求,则不需要重新安装, 如果不符合要求则会删除此版本, 重新安装, 这就回到包不存在的规则
如果安装的包存在其他依赖, 安装依赖的时候也会执行此规则
包安装方式
源码安装: 从源码开始编译构建, 这个比较耗时间而且容易出错, 如果看到pip下载的是压缩包那些文件, 就是源码构建
预构建二进制包安装: 直接安装别人已经编译构建好的二进制文件(.whl格式)
对比项
源码安装
预构建 Wheel
安装速度
慢(需编译)
快(直接安装二进制)
兼容性
高(可适配不同环境)
依赖官方提供的 Wheel
定制性
高(可修改编译选项)
无(固定二进制)
依赖要求
需编译器(如 gcc)
仅需 pip
常见问题
版本冲突问题
第一种: 两个包依赖的共同包版本不一致 通常需要升降级一个包的版本( ...
内网穿透
内网穿透的作用就是将一个局域网机器暴露在公网上, 他的原理就是通过一个公网上的中间服务器接受以及传达信息给局域网机器, 所以需要一台中间服务器, 服务器上需要装好内网穿透的服务端, 局域网机器需要装好内网穿透客户端.
因此内网穿透我们有两种选择:
使用内网穿透服务商, 这样我们不需要自己装备服务器
使用自己的公网服务器
服务商
cpolar
官网
优点: 免费稳定, 能通过在线平台就看到连接到内网机器的ip+端口
缺点: 免费版无法使用固定端口
ChmlFrp
官网
优点: 免费且能固定端口, 也能通过在线平台就能看到内网机器的ip+端口
自建服务端
nps
官网
transformer及其变体学习
显存占用
对于transformer中, 最占用显存的部分就是注意力计算了, 他会产生一个很大的注意力得分矩阵, 这个矩阵形状通常是 ( batch , head, N, N) N代表序列维度
如果我们使用32批次, 一张640 640 的图片, 然后patch选 16 那 N就是1600, head选8, 显存占用就有
132 * 8 * 1600 * 1600 * 4 / 1024 / 1024 / 1024 = 2.44GB
一个注意力分数矩阵就已经2.44G了, 通常encoder和decoder有6层, 这个显存占用就已经很大了
主要减少显存占用的方法:
减小batch
增大patch, 也就可以减少N, 这个是O(N^2)级别的, 降低起来很有效
问题汇总
这个是我学习transformer中的一些疑惑
词嵌入的目的
问: 能否直接将词在词库中的编码直接交给transformer而不使用词嵌入
答:
直接使用单词在词库中的索引数字(即数字ID)作为输入是不可行的,原因有以下几点:
缺乏语义信息:数字ID只是单纯的标识符,不包含任何语义信息。例如,"猫 ...
python场景方案解决
拿到控制台所有输出
我这里是自己解析了命令, 暂时没有找到很好的库, 我这里解析的也不全
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061import osimport sysfrom tqdm import tqdmimport loggingimport atexitclass ParseConsoleStr: def __init__(self): self.buffer = [] self.current_line = "" def parse(self, text): for char in text: if char == "\r": self.current_line = "" # 回车后重置当前行 ...
python常用包学习
Numpy
提取数据
1. 索引
这种方式就跟数组的使用是一模一样的
1234arr = np.array([[1,2,3], [4,5,6], [7,8,9]])arr[0] # [1,2,3]arr[0,0] # [1] 等价于arr[(0,0)]arr[[0,1]] # [[1,2,3],[4,5,6]]
2.切片
其实索引就是一种特殊切片, 我个人觉得可以这么理解
123arr = np.array([[1,2,3], [4,5,6], [7,8,9]])arr[0] # [1,2,3] 等价于 arr[0,:]arr[[0,1]] # [[1,2,3],[4,5,6]] 等价于arr[[0,1], :]
总结
np里面的数组有多少维度, 默认取数据的时候, 就能指定多少维度, 不指定就是全选, 默认维度指定是从左到右
通过这种理解方式, 我们就很容易得知取了数据之后还有多少维度
需要注意的点就是 () 和 [] 的区别, () 就相当于正常取数据里面有个数据就是设置几个维度, 而[]只是设置一个维度
12a[(1,2,3)] => a[1,2,3]a[[1,2,3]] ...
目标检测领域的经典模型
前言
此文是我对目标检测领域各个经典模型的一个总结
Faster RCNN
Fast RCNN 的ROI是通过 SS(选择性搜索)得到的, 他的速度比较慢, 而且是在CPU里面执行的, 基于此, 在Fast RCNN 基础上提出了 RPN(区域建议网络), 直接通过主干网络提取出来的特征生成ROI
RPN
首先对于主干网络使用3x3的卷积进一步的提取特征(特征图大小不变), 然后将特征图分别送入 分类分支(背景还是前景), 回归分支(预测目标框位置)
RPN 里面引入了锚框的概念, 锚框就是以某一个点为中心点, 生成不同大小或者不同比例的框, 为什么引入锚框, 以及有什么用?
引入锚框是为了生成预选框, 这样生成是比SS快的, 我们的特征图中的每个点其实就是一个中心点, 然后将锚框对应特征图区域的特征值送入分类器和回归器得到预选框
锚框其实是使用了我们人的经验, 因为我们知道生活中物体大概都是多大的, 所以我们就可以基于此设计锚框
对于特征图每个点都会根据k个锚框生成k个预测框, 包含4个参数(位置信息), 2个参数(分类信息)
分类器
根据RPN产生的预测框, 生成对应位置的特 ...
yolo框架学习
本文是结合yolov8及其以后的框架做的总结
路径寻找
yolo中我们可以指定一下几个参数路径, 但是有时候他能找到有时候他又找不到, 所以我分析了一下原因, 只有在相对路径的时候才会出现这个问题
有的路径参数有如下几个:(仅讨论相对路径)
模型文件pt
数据集文件yaml
数据集yaml文件中的数据集路径
权重相对路径
模型文件 和 数据集yaml文件 就相当于普通文件没有做特殊处理, 因此文件路径是相对于当前执行目录(工作目录), 但是对于数据集yaml文件他还有一个单独搜索路径在于yolo安装包的cfg/datasets文件夹(我们自己的优先级更高)
数据集yaml文件中的数据集路径是相对于yolo定义的一个json配置记录的地址, 他的配置文件如下, 他默认在/home/DJM/.config/Ultralytics/settings.json
123456789101112131415161718192021{ "settings_version": "0.0.6", "datasets_dir&quo ...
