- 博客(92)
- 资源 (2)
- 收藏
- 关注
原创 YOLOV11 笔记2
官网有解释说这是针对训练和pretrain model类似数据时的trick, 因为我们重要的features都是被前面pyramid layers掌管,那这里要不要重置weight也都不重要,反正已经是optimal了。当然我这个反骨仔就想试试,我就不要freeze它,因为我训的内容比较垂直领域。如果我不用default model, 那不是训了个寂寞?先看看训练结果如何,然后再看看DFL实际上是怎么apply到这个训练的,毕竟我的数据不平衡,也需要对各个class weight做些手段。
2025-02-11 11:24:37
81
原创 leetcode Heap/Queue
输入:nums = [2,11,10,1,3], k = 10输出:2解释:第一次操作中,我们删除元素 1 和 2 ,然后添加 1 * 2 + 2 到 nums 中,nums 变为 [4, 11, 10, 3]。第二次操作中,我们删除元素 3 和 4 ,然后添加 3 * 2 + 4 到 nums 中,nums 变为 [10, 11, 10]。此时,数组中的所有元素都大于等于 10 ,所以我们停止操作。使数组中所有元素都大于等于 10 需要的最少操作次数为 2。
2025-01-15 11:29:57
418
原创 GAN!和它不要太有缘~一些CV paper的笔记
OS:最近有看到这个paper还挺有意思,主要是最近开始在做3D的事情。里面的UVmapping我在逛画展的时候见过这个效果,不过是今天才真的了解到它的实际作用和一些原理。下面的文章展示效果是利用了UV将pattern放置于面部的,而不是最近很火的stablediffusion的生成。我的天,现在是2025年,写的第一篇blog,不知道等我老了,我还在不在干CV,还是那个时候,我已经被AI替代了,正在大街上摆摊卖硅基的小吃摊各种口味的机油…
2025-01-10 12:20:04
561
原创 多人强化学习
这里有个后面流传很广的算法:COMA(counterfactualmultu-agent)文中有提到最简单的policygradient的形式是,公式如下:∇J(θ)=E[∑∇logπ(a|s)G它用MonteCarlosampling来estimateexpectedreturn,所以gradientestimates的variance会比较高。
2024-12-04 23:56:55
904
原创 self-supervised learning
mutual information 是当年学information theory的concepts,其实没有真的和我感兴趣的CV有真的联系在一起,cool cool,又见面了。框架中,Mutual Information 被用来权衡保留相关信息 ((I(Z;Y))) 和压缩冗余细节 ((I(Z;中,Mutual Information (I(Z_1;压缩通过降低 (I(Z;X)) 来移除噪声,专注于任务相关特征,从而提高泛化能力。
2024-11-29 14:46:20
794
原创 KF & UKF
绿色点:理想情况能检测到每个位置红色×:假设的漏检情况接下来就看KF 、 UKF怎么处理我的漏检了,这取决于它们的predict。
2024-11-19 17:47:55
147
原创 Frequency-aware Feature Fusion for Dense Image Prediction
nc 设置成啥都行,反正后面训练时会不一样。这里是根据已有的conf file修改的。
2024-10-09 10:59:17
459
1
原创 自己训练 PaddleOCR PP_OCRv4
所以,如果你的数据像我的一样的话,100%确定是水平的框,不是斜着的,那么请放心大胆把这两行注释了,你会发现数据导出的一片满意~尽管在模型训练里添加了旋转的数据增强,但是旋转过大的数据直接增加模型训练难度,而且加入后对原本识别好的有所下降, 所以还是看时间,如果时间够多,增加epochs,时间少,就不要给模型加大训练难度了。这时,你的terminal会有路径变化,为了以防万一,可以ls一下,看看当前的路径(默认是训练的文件夹)有没有你需要的。检查了默认的数据增强,按照官方建议,我要把概率提高到0.6。
2024-07-04 14:33:04
1502
2
原创 YOLOv10: Real-Time End-to-End Object Detection
两个值的差距我之前要是不知道具体的值,会想用MSE,不要太简单和直接。Ok,作者根据数据的类型
2024-06-24 11:35:29
175
原创 multiple object tracking
最近正在work on 一些运动的项目,自己比较心仪和好奇这篇论文,希望有些技术能够借鉴到实际运用里。
2024-06-21 17:15:25
104
原创 Vid2seq
光训练projection的路子,划算是划算,但是效果不好,比如video-llama, PG video llava…对于一段视频,time_input_token 为 (n, 2), text_input_token 为 (n,根据tokenize得到的长度),n为切分后的片段。仔细观察结构,不管是视频画面还是语音内容,都经过了两个步骤的encoders。例子:(PS:是吧,就比那种光projection的,描述上要更贴合实际,而不是轻飘飘的说个摸棱两可的话)模型输入有分视频画面和 拼好后的语音。
2024-04-07 18:17:50
415
原创 Face recognition
需要注意的是,以上结论是建立在向量的范数等于1的前提下的。如果向量没有进行归一化,或者归一化后的范数不等于1,那么内积和余弦相似度的结果就会有所不同。总之,当人脸特征向量的范数等于1时,向量相乘得到的内积与余弦相似度是等效的。这是因为对于单位向量,内积的结果等于两个向量夹角的余弦值,与余弦相似度的定义相同。如果人脸特征向量的范数(Norm)等于1,那么向量相乘得到的内积(Inner Product)与余弦相似度(Cosine Similarity)是等效的。
2024-03-25 10:21:33
147
原创 AnimateDiff
这样的一个motion module “insert”的套路 就很LORA有个宏伟的目标,一统各种domain,而且也实现了。也就是说,一个module可以被用在任何主题场景。
2024-03-12 12:26:47
167
原创 Decision Transformer
emmm, 这里的Transformer 就和最近接触到的whisper一样,比起传统Transformer,自己还设计了针对特殊情况的tokens。比如whisper里对SOT,起始时间,语言种类等都指定了特殊tokens去做Decoder的输入和输出。DT这里的作为输入的Tokens由RL里喜闻乐见的历史数据:State,Action,Reward组成。输出只是简单的Actions(历史+即将需要的)
2024-02-29 18:11:10
342
原创 LLM Note 1
比如对一短视频做理解,他会重复输出“他穿着黑色衣服”,直觉认为可能是对视频做embbeding 时,抽到的帧都差不多,所以导致重复,基本上如果视频有8帧,那么类似的语句就会重复个7,8次。Token 确实比较影响model的效果,因此,怎么输出有效且准确的token,比较重要。Router 主要是将 Attention的输出,进行分配,Attention输出和FFN之间,不是全链接的关系。如果Token的数量在3-4左右,那么可以加速至少2倍,如果Token 数量在3~7,那么可以有更快的速度。
2024-02-20 11:53:04
698
原创 InstantID
之前使用LORA的方式去训练专门的人物模型,靠,以为是最赞的方式了,但是后来发现还有更赞的,其实faceswap 就够赞的了,而且比SD更早的出现。
2024-02-18 11:52:29
572
原创 Snake Conv
我的问题比较tricky,因为数据量不平衡和数据少(就是力求不平衡和数据少),需要找到一个不需要在意数据量的方法。后续我会再check一遍snake conv的论文,顺便猜测or理解一下,为啥在我的问题上,它效果不太行~ (除了数据量之外)除此之外还需要把weight转换成tensorRT, 飞飞视频的代码里有几个地方需要改一下,就能顺利输出。下面的zero, max_y, max_x 需要确保都是在torch cuda上的量。然后我有尝试更改了能改的层,随机的都尝试了一下,最后都没有原始的c2f效果好。
2024-02-01 16:46:15
331
原创 Towards Robust Blind Face Restoration with Codebook Lookup Transformer
这个projec相对codeformer已经是老一些的了,CodeFormer paper说自己的效果比这个更好。有看了这个视频,它借用了R-ESRGAN 4x 和 GFPGAN 50%,既保留了一些人物特征,又有了更好的效果。
2024-01-18 17:18:31
1123
原创 openCV的CUDA GPU 版本安装 (Ubuntu windows 通用)
例子:/media/xxx/cozynest/anaconda3/envs/detection/lib/python3.9/site-packages/cv2/python-3.10。这里有可能会出现configure的文件找不到的错误,可以直接copy paste Python 版本的文件,根据缺失文件的名字添加。这样放的原因是我Ubuntu的Home容量不够多,导致我需要把这些东西放在另一个盘上,其次是这样安装比较干净。以下是Python3相关会填入的内容。2:下载后的两个包裹会放在以下结构。
2023-10-22 22:08:18
1579
原创 Video-LLaMA
由于这个模型里的视频帧是均匀抽取8个帧,如果只有一秒的视频,那么很容易抽到的8张图都是一样的,那么描述就会像在说车轱辘话一样,来回重复并颠倒。因此,为了符合这个模型的特点,建议先用长一点的视频,再经过快进处理。6. 图像encoder 用的是 Blip-2 中专门做图像语义理解的部分,这个部分的结构:EVA CLIP + Q-former。整个模型,蓝色的blocks都是可以被拿来直接用的,橙色部分是一定要经过训练,以促成Llama video 模型正常联通使用的。整个代码里的部件权重加载在。
2023-08-22 12:02:48
678
原创 lama cleaner
如果是GPU的,一定要装GPU版本的pytorch: (我用的11.8版本)如果要使用以上的内容,需要在parse_args.py 这个文件里添加。把这些内容打开后,这个包会自动下载所有相关权重。
2023-07-25 18:11:43
608
原创 python 加速(1)
因为要修改yolo系列里NMS处的计算,如果用python,速度巨慢。torchvision 有自己的加速后的NMS function。但是不和形变后的IOU通用。因此需要做一个类似的。回看torchvion, 发现里面有cpp的文件,因为之前没有接触过加速(资源比较丰富)。C++ 并不是加速NMS那步操作的解药,解药是CUDA kernel。因此,如果要加速任何的function在model里,CUDA kernel 是最终目的。自己之前误入歧途,以为C++就能加速一切。
2023-06-15 17:02:10
2575
1
原创 YOLO NAS note 1
Yolo-Nas 的代码比YOLO v8 还恐怖。之前的YOLO数据可以通过:coco_detection_yolo_format_train, 和 coco_detection_yolo_format_val 自动转。
2023-05-18 18:16:48
1641
9
原创 yolo v5 训练
这行 Python 代码使用了 pathlib 模块中的 WindowsPath 类来创建一个 Windows 路径对象 p,表示了一个名为 train 的目录,该目录位于 E:/data/helmet_head/ 目录下。论文给 SGD和 Adam 都试了 weight decay 和 L2 regularization.红色的是传统使用 L2 regularization 做法, 绿色是使用weight decay的做法。(表示所有类型的文件)路径,得到一个包含通配符的字符串路径。,得到一个新的路径。
2023-05-15 11:03:59
851
原创 YoloV5 用的Triton 模型导出和测试
固定/不固定模型参数,都写default=[640, 640]占位如果不固定模型参数,需要在--dynamic里默认为True。这样子,做inference的时候,图片是任意的尺寸输入。
2023-05-02 19:36:40
395
原创 Yolo v5 长方形 训练修改
感谢,以下内容改自:http://t.csdn.cn/37m2wdataloaders.py# YOLOv5 🚀 by Ultralytics, GPL-3.0 license"""Dataloaders and dataset utils"""import contextlibimport globimport hashlibimport jsonimport mathimport osimport randomimport shutilimport timefrom it
2023-04-25 22:49:28
2466
6
原创 显著性分析
为了找到更符合数据的分析方法。每个方法有自己的假设,如果违背了结果会不精准。Sign Test 是一个可以用于任何数据分布情况的pairwise 方法。检查:Sample 数量 < 50,适用 Shapiro-Wilk,Sample 数量 >= 50,适用Kolmogorov-Smirnov。
2022-12-26 15:00:51
2487
1
原创 Transformer for CV
Transformer 也不适用batch norm,Batch由GPU操作,但是一般的GPU顶多2个Batch,按照上一个内容,计算出12,这样的Batch size,对GPU来说为难了。对sequence的data不好,因为sequence的长度不一,那么batch norm用的mean 和 std 就不能很好的将每个feature的分布准确算出。而分的大块可能会错失细节信息。以上是数学里的计算方式,但是在代码里,以上步骤不好操作,因此,目前的GELU是通过sigmoid 或者 Tahn 估计出来的。
2022-11-29 15:31:50
1016
1
Label me json xml 互转
2024-09-13
TransNet V2 pytorch 版本的推理 视频镜头边界检测
2024-04-01
shotdetect-scenedetect-lgss
2024-03-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人