- 博客(55)
- 资源 (2)
- 收藏
- 关注

原创 unet模型及代码解析
什么是unet一个U型网络结构,2015年在图像分割领域大放异彩,unet被大量应用在分割领域。它是在FCN的基础上构建,它的U型结构解决了FCN无法上下文的信息和位置信息的弊端(下文细说)Unet网络结构主干结构解析左边为特征提取网络,右边为特征融合网络特征提取网络由两个3x3的卷积层(RELU)再加上一个2x2的maxpooling层组成一个下采样的模块,一共经过4次这样的操作特征融合网络由一层反卷积+特征拼接concat+两个3x3的卷积层(ReLU)反复构成,一共经过4次这样的操
2021-11-06 13:01:49
52871
8

原创 【深度学习】-pytorch新手入门经验,完整代码+详细注释
第一阶段:拿来主义1.学会如何用torch方式:看大量博文,将手写数字识别用torch做出来成果:成功做出效果import torchfrom torchvision import datasets,transformsimport torchvisionfrom torch.autograd import Variableimport numpy as npimport matplotlib.pyplot as pltfrom torch.utils.data import Data
2021-10-23 10:55:59
2652
原创 【大模型】使用DPO技术对大模型Qwen2.5进行微调
你需要配置 DPO 的训练参数,包括模型配置、训练设置等。3、数据格式:将数据处理为 DPO 所需的格式。通常,DPO 需要一个包含对话对和相应偏好标签的数据集。1、选择数据集:lvwerra/stack-exchange-paired。
2024-12-18 21:59:20
754
原创 YUV图片常见格式
1个亮度量Y+2个色度量(UV)兼容黑白电视可以通过降低色度的采样率而不会对图像质量影响太大的操作,降低视频传输带宽有很多格式,所以渲染的时候一定要写对,不然会有很多问题,比如花屏、绿屏。
2023-10-18 11:18:03
250
原创 播放器缓存队列bug解决方案
我在开发一个播放器的缓存队列时,遇到一个bug,导致包和帧无法被下一个模块读取找了半天,原来是队列中的包和帧数据要进行内容的刷新暂存包数据和帧数据不能直接放入队列long。
2023-10-17 17:11:28
818
原创 【c++】锁机制:mutex与condition_variable说明及示例代码
互斥锁用于多线程下保护资源同一时刻只有一个线程读写std::mutex 是C++标准库中提供的互斥锁(Mutex)类,用于实现多线程之间的互斥访问。它提供了两个主要的操作:lock() 和 unlock()。当一个线程调用 lock() 函数时,如果锁没有被其他线程持有,那么该线程将获得锁,否则,它会被阻塞,直到锁被释放。而当一个线程调用 unlock() 函数时,它释放了之前获得的锁。
2023-10-15 16:39:59
1672
原创 【linux网络】IO多路复用select、epoll的区别,含示例代码
解耦操作:服务器等待 、服务器处理数据客户端不活跃 (无数据传输)时,服务器不等待,直接挂起服务器只处理活跃客户端IO (有数据传输)
2023-09-24 13:32:27
145
原创 c++-深浅拷贝
浅拷贝是一种拷贝方式,它只是简单地复制对象的值或引用。这意味着原对象和新对象会共享相同的内存,对其中一个对象的修改可能会影响另一个对象。通常用于处理栈上分配的对象,如基本数据类型或对象的引用。深拷贝是一种拷贝方式,它会在堆区重新分配内存并复制对象的内容。这意味着原对象和新对象是完全独立的,对其中一个对象的修改不会影响另一个对象。通常用于处理动态分配内存的情况,如指针指向的数据。
2023-09-19 14:37:38
142
原创 【音视频】ffplay解析-音视频同步
视频慢了则丢掉部分视频帧(视觉->画⾯跳帧)主要:以音频为基准,让视频合成音频。视频快了则继续渲染上⼀帧。
2023-09-19 14:05:17
938
原创 C++类型转换
并确保它们不会引入潜在的错误或不安全的操作。良好的代码设计和类型安全性是更重要的目标。:动态类型转换,用于基类和子类之间的转换,要求有虚函数,不安全则返回NULL。:静态类型转换,用于基本数据类型、继承关系中的向上转换,空指针转换。:底层数据重新解释,用于指针、引用、算术类型等,不保证类型安全。:修改const属性,用于指针和引用,可添加或删除const。虽然类型转换是一种有用的工具,但在项目中应。
2023-09-19 10:01:07
85
原创 c++语法-模板
模板是C++中一种强大的特性,允许你编写通用的代码,以便在不同数据类型上重复使用。模板分为函数模板和类模板,它们都是在编译时生成具体代码的蓝图。
2023-09-18 15:32:41
242
原创 ffplay源码解析-main入口函数
启动线程:解复用,解码,播放等线程都在stream_open中启动。变量、缓存区、SDL窗口初始化等。播放、暂停、快进、快退等操作。
2023-09-17 16:37:10
435
原创 【音视频】ffplay源码解析-FrameQueue队列
如果只用一个连续数组表示一个队列,没有其他标志位。因为这⾥存储的是解码后的数据,不宜设置过⼤。则无法判断队列状态是队满还是队空。
2023-09-17 15:47:47
380
原创 【音视频】FLV封装格式
位置:Timestamp:每一个Tag的头信息第5个字节-第7个字节,一共三个字节TimestampExtended:还有一个扩展字节一共4个字节时间戳占4个字节 其中第四个字节是⾼位 前三个字节是低位(每个tag的5~8字节),毫秒级。
2023-09-16 00:12:15
563
原创 【音视频】H264视频压缩格式
H.264从1999年开始,到2003年形成草案,最后在2007年定稿有待核实。在ITU的标准里称为H.264,在MPEG的标准里是MPEG-4的一个组成部分-MPEG-4 Part 10,又叫Advanced Video Codec,因此常常称为MPEG-4AVC或直接叫AVC。
2023-09-15 23:48:30
398
原创 【音视频】AAC音频压缩格式
总结:ADTS可以在任意帧解码,也就是说它每一顿都有头信息【默认使用格式】ADIF只有一个统一的头,所以必须得到所有的数据后解码【一般不使用】
2023-09-15 23:09:59
335
原创 linux学习笔记
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wMYnIh3e-1691403061327)(D:\IOT-QF\文档\学习记录\img\image-20230704174140848.png)]打开文件之后的默认模式,可以执行特定的指令,如i, o, a,O等,如果按i表示,进入插入模式。在编辑模式下,按shift :进入命令行模式。输入文件内容,按ESC退出插入模式,进入编辑模式。自动补全+历史命令——Tab+双Tab+上下键。man——查看帮助信息。
2023-08-07 18:10:37
119
原创 Java接口
接口基础定义一种对类的约束,规定统一的方法名,参数,返回值类型需求:要生产很多具有相同功能,不同内容的对接工具(多对一)——比如USB接口和其他可拆卸硬件设备在项目架构中,必须先把接口文件写好,之后在实现功能就行了接口代码package base.接口_new;//定义接口public interface UsbInterface { public void start(); public void stop();}实现接口手机类package base.接口_n
2022-01-28 16:53:48
483
原创 网络编程概念
1.1 网络通信概念网络编程的目的连接,信息交换网络编程中两个主要问题如何准确定位到网络上的一台或多台主机找到主机后如何进行通信网络编程的要素地址ip_公网ip/内网ip端口号网络通信协议javaweb:网页编程 B/S网络编程 TCP/DCP1.2 ipip地址:inetAddress唯一定位一台网络上的计算机127.0.0.1:本机localhostip地址的分类ipv4 / ipv6ipv4 127.0.0.1 , 4个字节,0-255
2022-01-22 19:25:33
1570
原创 使用flask_SQLAlchemy如何创建一对多关系表数据库(sqlite3)
使用flask_SQLAlchemy如何创建一对多关系表数据库(sqlite3)from flask_sqlalchemy import SQLAlchemyfrom flask import Flask# 先连接数据库app = Flask(__name__)app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///test.sqlite3"app.config['SQLALCHEMY_ECHO'] = False # 日志app.config
2022-01-13 13:17:04
858
原创 java中public/private/protected的具体区别
java中public/private/protected的具体区别public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用。protected:protected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。...
2021-12-07 09:47:34
11309
原创 numpy ValueError: cannot reshape array of size 200704 into shape (1,3,224,224)
报错ValueError: cannot reshape array of size 200704 into shape (1,3,224,224)解决如何将200704—2242244像素转变成2242243像素————png转jpgfile_path = 'work/216_cir_1_r95.png'im = Image.open(file_path) # 将一个4通道转化为rgb三通道img = im.convert("RGB")pri
2021-12-02 13:23:18
4085
转载 numpy reshape与resize区别
reshape :1)reshape-1:无返回值的reshape;2)reshape-2:有返回值的reshape。注意:把array reshape成一个新的结构,但是不会改变原来的array,也不会改变array原本的数据,比如下图 # error 所显示,若强制把8个数据reshape成(2,3)则会报错。resize:1)resize-1:无返回值的resize,会改变原来array的shape;2)resize-2:有返回值的resize,不会改变原来array的shape;3)r
2021-12-02 13:08:59
613
原创 队列实现及其操作java版
队列实现及其操作java版静态队列–循环队列package 数据结构.队列;/* 静态队列通常都是循环队列——数组前面删掉的多了,闲置空间就无法利用在队列中,使得队列空间越用越少 1.什么是循环队列——数组中两个指针内区间域作为队列域,循环的是指针, 2.循环队列结构——有限数组,头指针(int),尾指针(int) 3.头尾指针不同场景下的含义: (1)初始化:front=rear=0 (2)队列非空:front指向队列第一个元素;re
2021-12-01 15:01:08
511
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人