ConvNext品鉴-东方Project角色识别

前言 为了给例会群里搞点乐子,于是决定搞一个东方角色的识别,首先想到的其实就是ConvNext网络,对于这个一百来个角色的分类任务,它足以胜任。 qwqpap/touhou_guess · Hugging Face ConvNext网络介绍 (99+ 封私信 / 90 条消息) ConvNeXt—— 一个能挑战 Vision Transformer 的卷积神经网络(万字长文,从原理到代码演示) – 知乎 懒得介绍了,看看知乎得了 数据来源 预期的角色数量大概在120多人,有一些旧作的角色可能被狠狠抛弃了。 事后发现纯狐和三花也被忘掉了) 每个角色大概100多个图片,最开始的数据集来自于Preacher-26/touhou-embeddings-dataset · Datasets at Hugging Face 特别感谢Preacher老师的分享。 之后再次获得了Renko_1055的神秘python脚本,使我的数据集数量获得了极大的提高。 稍微修改一下…

[中文]在RK3888上使用YoloV5

前言 因为讯飞车换了主控,所以需要重新部署一下模型在RK3588上面,写来给学弟们以后用。 顺便一提,这个板子真他妈恶心啊我操。 部署分为三个部分,训练,转换与推理,我们一步一步来。 训练 选择你的版本 因为很多神秘的原因,我们不得不使用某一特定版本输出的权重文件才能够在最后一步推理的时候成功,所以这一步至关重要,需要这个仓库的内容。 airockchip/yolov5: YOLOv5 in PyTorch > ONNX > CoreML > TFLite (github.com) 值得注意的是你需要在这个仓库下训练。 关于环境安装的问题就不在此赘述了,这搞不懂后面你也看不懂。 预处理你的数据 对于讯飞比赛而言,我们并不需要模型具有良好的泛化性,换言之,可以尽情地使用各种数据增强的方法而完全不在乎过拟合的问题,故我们的输入只需要每个classes五张图片即可。 相关代码在我自己的github仓库里面 qwqpap/auto_maker (git…

Python 井字棋 强化学习

前言 本来想做强化学习小车,但是技术栈似乎飞了,所以还是一步一步来嘛。 Part 1 Code import copy import random import json import matplotlib.pyplot as plt class OoxxMachine: def __init__(self): self.race = [[0, 0, 0], [0, 0, 0], [0, 0, 0]] # 用于表示棋盘 0代表没下过 1 A玩家 2 B玩家 self.flag = "in_race" # all situation is "…

如何让主播给你唱歌

前言 东雪莲可以和间眠大佐切割,我认为东雪莲也可以和锤头鲨本鲨切割。 首先 我不是棺材板 其次,准备开始了。 先品鉴一段 再来一段日配 文字-语音(GPT-SoVITS) 1 配置环境 1.1 Conda 先拉取最新的仓库 $ git clone https://github.com/RVC-Boss/GPT-SoVITS/ 然后创建一个conda环境 并且安装所需要的包 在安装之前你应该手动安装一下pytorch来避免一会自动安装的torch没有gpu用 去pytorch官网查看怎么使用pip 安装最新的pytorch即可 然后安装requirements.txt $ pip install -r requirements.txt 之后大概率会报错到爽 原因是你没有安装cpp相关工具,所以jieba_fast等一系列库无法被编译,这有两个解决办法,一是直接下载.whl文件安装,…

深度学习 原理性实践

前言 以前一直是调用,从来都是知其然而不知其所以然,不太好,正好最近一直在使用yolov5,又很想搓一个自然语言聊天机器人,就决定学一学: Part1 理论基础 1.1 正向传播 输入为矩阵,对矩阵进行仿射变换后加上激活函数,反复几层之后输入,经过Softmax输出结果。用交叉熵损失判断其模型好坏,并进行下一步操作 1.2 反向传播 首先明确反向传播即损失值对网络中仿射变换参数的改变 对于softmax层,反向传播softmax层输出预测与实际的差值 对于仿射变换层,引入正则化惩罚项:reg与学习率:epsilon来约束反向传播 这个时候对于一般仿射变换: H = W*X +B 与其反向传播的输入值dW,dB 有 dW = dW + reg * W 更新W与B有: W = W – epsilon * dW B = B – espsilon * dB 这样就能实现反向传播在仿射变换中的流动了…

基于opencv的自动标注yolov5数据集

前言: 具体使用请查看我的github仓库: https://github.com/qwqpap/auto_maker 再需要yolo识别物体之前,通常需要漫长的标注过程,而本程序主打一个自动化 把目标图片放进以目标名字命名的文件夹 把目标名字文件夹放在images文件夹下面 确保每个类别的图片数量是一致的 把背景图片放在back文件夹 Part 1 一点线性代数 我们可以发现在对图片进行仿射变换时,只需要对原图片的一组基向量进行变化即可 那么在进行透视变换的时候就需要对三个想来进行同时的变换即可 具体的数学计算看代码吧,太晚了我想睡一会了 这个:言って。好好听 下面有两个版本,分别是仿射变换和透视变换,效果都还行,目前GitHub上面是透视变换的版本qwq。 import pyautogui as gui import cv2 import numpy import os import time import glob import cv2 import num…