自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 资源 (13)
  • 收藏
  • 关注

原创 获取任意范围内的随机数案例

【代码】获取任意范围内的随机数案例。

2023-01-17 17:54:37 188

原创 正则表达式

java正则表达式

2023-01-17 17:25:14 390

原创 java框类的使用

java基础

2023-01-16 17:41:51 152

原创 java类相关知识

java基础

2023-01-11 16:13:18 72

原创 利用FFmpeg将一系列jpg图片封装成mp4格式

#include "libavformat/avformat.h"#include "libavutil/timestamp.h"#define NUMS 33void saveframe(AVFrame *frame, const char *filename) { FILE *file; file = fopen(filename, "wb+"); int width = 320; int height = 480; unsigned char *buf = (unsigned c.

2022-04-22 11:14:22 2008 1

原创 HTTP包格式

①HTTP请求格式请求行:包括 方法+URL+版本Header:包括请求的属性,是由冒号分割的键值对,每组属性用\n分割,遇到 空行 说明Header结束Body:空行之后都是Body的内容,Body允许是空字符串,如果不为空,那么在Header中会有一个Content Length属性说明Body的长度实例1、请求方法GET:请求获取Request——URL所标识的资源POST:在Request——URL所标识的资源后附加资源HEAD:请求获取由Request——URL所标识的资源的响.

2022-04-15 11:33:24 755

转载 NAT类型及工作原理

一、概述在计算机网络中,网络地址转换(Network Address Translation,缩写为NAT),也叫做网络掩蔽或者IP掩蔽(IP masquerading),是一种在IP数据包通过路由器或防火墙时重写来源IP地址或目的IP地址的技术。这种技术被普遍使用在有多台主机但只通过一个公有IP地址访问因特网的私有网络中。根据规范,路由器是不能这样工作的,但它的确是一个方便且得到了广泛应用的技术。当然,NAT也让主机之间的通信变得复杂,导致了通信效率的降低。协议详细说明:http://www.rfcr

2021-12-10 10:30:04 1701 1

转载 stl中的upper_bound与lower_bound

https://blog.csdn.net/qian2213762498/article/details/79250097

2020-09-04 15:41:49 130

原创 c++中的new与delete

int *p = new int[10]; //分配一个内存,指针P指向这个内存delete p; //或者 delete []p; 两个都没错,释放这个内存class A{public: A(){ std::cout << "构造函数" << std::endl; } ~A(){ std::cout << "析构函数" << std::endl; }}A *p1 = new .

2020-08-22 22:52:36 129

原创 c++中的const与const_cast

int select(const int& num){ int* p = const_cast<int*>(&num); //强制去掉const属性 *p = 40; //num = num - 5; //会出现错误 return num;}int main(){ const int a = 20; int b = 10; std::cout << "the num is: " <&l.

2020-08-16 23:36:34 132

转载 C++模板判断类是否存在某个成员变量

#include <iostream>#include <type_traits> // 检查 xxxx 是否是类T的成员template <typename T>struct has_member_xxxx{ // 如果 &T::xxxx 合法, 本函数就合法 // 下面check<T>(0)优先调用本函数, 返回值是void template<typename U> static void check(declty.

2020-06-12 17:27:58 1796

原创 nvenc硬件编码相关设置

1.如何设置强制I帧编码 av_opt_set_int(context->priv_data,"forced-idr",1,0); 接收到强制I帧请求之后,设置video->pict_type =AV_PICTURE_TYPE_I。2.如何设置无缓冲编码(即编码一帧出一帧,无囤帧现象) context->max_b_frames = 0; (必须是无b帧编码) av_opt_set_int(context->priv_data, "zerolat...

2020-05-24 20:20:31 1587

转载 H264码流解析

https://blog.csdn.net/u010512264/article/details/82083467?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonec

2020-05-21 20:47:57 249

原创 ffmpeg多线程解码

一。ffmpeg中使用到的多线程的概念: 2.共享变量的互斥 互斥锁(mutex-lock)是一种信号量,用来防止两个线程在同一时刻访问相同的共享资源,它有锁定状态和非锁定状态,在任意时刻,一个线程要想存取共享数据,线程必须首先获得mutex-lock,当此线程释放此共享数据的时候必须对mutex-lock解锁,在一个任意的时间内,只有一个线程能锁定互斥锁,通过函数pthrea...

2020-01-17 17:32:02 2690 2

转载 C++重写(覆盖)、重载、重定义、多态

1 重写(覆盖)override override是重写(覆盖)了一个方法,以实现不同的功能。一般用于子类在继承父类时,重写(覆盖)父类中的方法。函数特征相同,但是具体实现不同。重写需要注意: 被重写的函数不能是static的,必须是virtual的 重写函数必须有相同的类型,名称和参数列表 重写函数的访问修饰符可以不同。尽管virtual是private...

2019-12-06 11:56:24 1614 1

转载 支持向量机SVM(任意点到超平面的距离公式)

支持向量机就是找到划分超平面中间隔最大的超平面,设定划分超平面的线性方程为:其中 w 决定了超平面的方向 ; b 为位移项,决定了超平面与原点之间的距离.显然,划分超平面可被法向量 ω 和位移 b 确定 。其中任意点到超平面的距离公式y为:上述是点在超平面的正一侧的情形,如何点再在超平面负的一侧,只需在公式前加-号即可。综上所述,点与超平面的距离公式可表示为:yi*y...

2019-12-05 11:17:24 4009

转载 python中pandas的iloc与loc函数的用法,与drop函数的用法

loc函数:通过行索引 "Index" 中的具体值来取行数据(如取"Index"为"A"的行)iloc函数:通过行号来取行数据(如取第二行的数据)1. 利用loc、iloc提取行数据import numpy as npimport pandas as pd#创建一个Dataframedata=pd.DataFrame(np.arange(16).reshape(4,4),index...

2019-10-21 15:28:38 1903

原创 python中split与splitext的区别

两个方法都是切割字符串的方法。split是从前往后搜索字符串,splitext是从后往前搜索字符串。os.path.splitext()更多的运用在了搜索文件路径(path)和文件的扩展名(ext),这两个组合在一起构成了完整的路径,如果使用正常的split()函数来获取扩展名,那么效率是很低的。...

2019-09-24 12:15:09 771

原创 python中关于类的操作

1.类的继承 创建子类的实例时,首先需要完成的任务就是给父类的所有属性进行赋值,为此,子类方法__init__()需要父类施以援手, 上述中的super()方法是一个特殊的函数,能够将父类与子类联系,可以调用父类的__init__函数方法2.子类自己的属性与方法3.子类重写父类的方法从上面我们可以看到子类重写了父类的print_informatio...

2019-09-08 00:23:36 131

转载 视频中的TI与SI指标

SI表征一帧图像的空间细节量。空间上越复杂的场景,SI值越高。TI表征视频序列的时间变化量。运动程度较高的序列通常会有更高的TI值。SI计算方法:对第n帧视频进行Sobel滤波,然后对滤波后图像计算标准差。选这些帧中的最大值为SI。TI计算方法:求n与n-1帧图像的帧差,然后对帧差图像计算标准差。选这些帧中的最大值为TI。以下截图分别显示Sobel滤波和帧差结果:Sobel滤波...

2019-09-06 16:08:15 2244

原创 python中的函数使用

1.让函数的实参变为可选2.传递任意数量的实参3.结合使用位置和任意数量实参 如果要让函数接受不同类型的实参,必须在函数定义中将接纳任意数量实参的形参放在最后。Python先匹配位置实参和关键字实参,再将余下的实参都收集到最后一个形参中。4.使用任意数量的关键字实参 有时候,需要接受任意数量的实参,但预先不知道传递给函数的会是什么样的信息。在这种情况下,可将函数编写成...

2019-08-31 14:28:17 147

转载 python中的正则表达式

python中的re模块主要是用来进行正则表达式的的。查找匹配的字符串//查找字符串是否以某个字符串开头import restr = "lili is good girl"result = re.match("lili",str)print(result.group()) //打印liliresult1 = re.match("good",str) //找不到匹配的,因为ma...

2019-08-30 16:27:02 89

转载 C++中截取两个字符之间的字符串

string picture_name = “edj_sdjj.bmp”;//this is picture numberstd::cout << "图片名:" << picture_name << endl;int nPos_1 = picture_name.find("_"); //如果改为.find("edj_"),输出将变为dj_sdjj,如果...

2019-08-26 18:22:22 2369

原创 python中关于列表的操作

bicycles = ['trek', 'cannondale', 'redline', 'specialized']可以使用负数进行索引,如bicycles[-1]表示列表的最后一个元素,-2表示倒数第二个元素1.1 修改列表元素的值。 直接进行赋值就可以,bicycles[0] = 'abcd'就可以将列表中的第一个元素的值改为abcd1.2 在末尾添加元素 ...

2019-08-24 18:10:34 166

原创 python中关于字符串的操作

字符串的定义,用双引号与单引号都可以name="hello'world!" 正确name="hello"world!" 错误name = 'hello"world' 正确name = 'hello'world' 错误title方法:将字符串中单词的首字母变为大写,其他字母均为小写name="love live"print(name.title())输出为:...

2019-08-24 17:09:16 94

转载 Linux下使用Git上传和更新代码

一、上传代码1、去github(码云)上根据网站的提示来创建自己的远程Repository(仓库)2、建立本地git仓库$ git init注意:此指令本地源码根目录执行,执行成功后,会在当前目录生成一个隐藏的名字为“.git”的目录。所有对本地仓库的操作信息都在此目录下存储。3、将项目的所有文件添加到本地仓库中$ git add .说明:此处的“.”...

2019-08-15 16:12:28 1089

转载 FFmpeg-4.0 的filter结构体关系与定义

一。结构体间的关系图filter涉及的结构体,主要包括:> FilterGraph, AVFilterGraph> InputFilter, InputStream, OutputFilter, OutputStream> AVFilter, AVFilterContext> AVFilterLink> AVFilterPad;从上图可以看到,FFm...

2019-07-22 11:51:03 428

转载 如何在服务器上部署Jupyter

1.安装Anacondawget https://repo.anaconda.com/archive/Anaconda3-5.3.0-Linux-x86_64.sh安装过程中会有:... ...installing: zlib-1.2.8-3 ...installing: anaconda-4.4.0-np112py27_0 ...installing: conda-4...

2019-07-10 14:59:06 3051

转载 C++中的c_str()函数

#include"iostream"std::string info_extend;void main(){//std::cout << "printsomething: " <<info_extend << std::endl;//ERROR!!std::cout << "printsomething: " << i...

2019-07-05 12:06:19 386

原创 Linux下如何获取可执行文件的路径以及如何将绝对路径变为相对路径

一/ 获取可执行文件的路径在Linux的home/yi/C++目录下新建a.c文件,代码如下,编译出可执行文件a :gcc -o a a.c#include <stdio.h>#include <unistd.h>#include <libgen.h>char * get_exe_path( char * buf, int count){...

2019-07-03 16:12:50 1477

转载 FFMPEG之TimeBase成员理解

FFMPEG的很多结构中有AVRational time_base;这样的一个成员,它是AVRational结构的typedef struct AVRational{ int num; ///< numerator int den; ///< denominator} AVRational;AVRational这个结构标识一个分数,num为分数,den为分母。...

2019-06-13 18:08:29 285

原创 如何检测一个packet中的数据是关键帧

通过AVPacket中的flags来判断。具体的代码参考如下:#include "stdafx.h"#include<stdio.h>#include<stdlib.h>#include<iostream>extern "C"{ #include <libavcodec/avcodec.h> #include <lib...

2019-06-13 12:05:10 894

转载 ffmpeg中的协议解析

协议的相关结构:协议操作的顶层结构是AVIOContext,这个对象实现了带缓冲的读写操作;FFMPEG的输入对象AVFormatContext的pb字段指向一个AVIOContext。AVIOContext的opaque实际指向一个URLContext对象,这个对象封装了协议对象及协议操作对象,其中prot指向具体的协议操作对象(如URLProtocol),priv_data指向具体的协...

2019-05-31 16:09:22 1607

原创 ffmpeg中转码时的数据流走向

一.ffmpeg中的解码操作是在函数static int process_input(int file_index)中完成的。1.在该函数中首先会调用static int get_input_packet(InputFile *f, AVPacket *pkt)函数将通过av_read_frame(f->ctx, pkt)函数将文件中的视频或音频数据读取到AVPacket结构体中。2...

2019-05-29 20:32:21 1239

转载 windows和linux下的静态链接库与动态链接库

一 windows下obj,lib,dll,exe的关系 lib是和dll对应的。lib是静态链接库的库文件,dll是动态链接库的库文件。 所谓静态就是link的时候把里面需要的东西抽取出来安排到你的exe文件中,以后运行你的exe的时候不再需要lib。 所谓动态就是exe运行的时候依赖于dll里面提供的功能,没有这个dll,你的exe无法运行。 ...

2019-05-22 20:18:42 755

转载 linux下C编程main函数的参数问题

在做linux下的应用编程时,main函数被定义成这个样子:int main(char argc,char *argv[])argc保存的是命令行参数的数目,而argv是指向个参数的各指针所构成的数组。argv是命令行参数个数 不带参运行 argc值为1argv是命令行参数argv[0]代表程序本身argv[1]代表第一个参数以此类推mmap.c编译好之后得到二进制文件mmap带...

2019-05-21 10:26:47 149

转载 ffmpeg在Linux下的编译与使用

ffmpeg在Linux下的编译请看文章:https://blog.csdn.net/yihuanyihuan/article/details/84405091ffmpeg安装第三方库请看文章:https://blog.csdn.net/yihuanyihuan/article/details/84405111linux下编译ffmpeg后会生成相关的动态文件与头文件,如何按照上述方法进行...

2019-05-20 15:35:50 932

转载 视频质量评估工具VMAF的使用

一。安装 vmaf git clone https://github.com/Netflix/vmaf.git cd vmaf git submodule update --init --recursive make echo export PYTHONPATH="$(pwd)/python/src:$(pwd)/sureal...

2019-05-16 11:55:01 8568

转载 从ffmpeg中抓取mv/mb_type/dct_coeff/qp和MBSize等数据(H.264)

1. mv——运动矢量mv——Motion Vector,即运动矢量。做视频运动相关的同学对这个感念应该不陌生,其实它描述的就是block级别的光流,视频编码过程中以块为单位进行亚像素精度的运动矢量的搜索,得到两个相关块之间的运动矢量,描述两帧之间的运动方向和大小。编解码中传递的其实是当前block与相邻block的运动矢量之间的差值,经过熵解码和运动矢量预测,才能得到真正的当前bloc...

2019-05-08 20:14:27 670

转载 ffmepg将mp4视频切割成ts文件从而形成m3u8文件

切片生成m3u8列表命令:ffmpeg -i input.mp4 -c:v libx264 -c:a aac-f hls output.m3u8此转换命令默认的每片(即一个ts文件)时长是2s,m3u8列表文件中默认只保存最后的5条片信息,也就是播放器在拉流时只能播最后的那5条ts视频文件。这肯定不是你想要的,那么幸运的是ffmpeg提供了更改这些相关设置的参数,如下:相关设置参数:...

2019-04-23 12:01:14 2560

OpenGL文档资料

关于opengl的文档资料,包含编程宝典,编程指南等各种pdf文档,为学习opengl的人提供方便

2018-12-09

NDK专题开发视频网盘下载链接

关于NDK的网盘视频下载教程,适合学习安卓的人学习,加深对安卓的理解

2018-12-01

fmpeg视频网盘下载连接

关于ffmpeg的视频教程,可以当作ffmpeg的入门教程,适合新手。

2018-12-01

HM16.0源码

HM16.0的源码,学习视频编解码的同志们可以下载,通过原理查看代码效果更好哦

2018-11-18

matlab图像处理

利用matlab对图像处理中的各种算法进行运行,可以看到图像处理后的效果

2018-09-06

FPGA的VGA显示器

利用FPGA开发板进行VGA的显示,可以帮助FPGA开发人员进行理解

2018-09-06

键盘控制verilog代码

利用键盘控制fpga开发板,适合fpga开发人员的入门,可以理解键盘与fpga开发原理

2018-09-06

FPGA的IIC协议

基于FPGA的IIC协议,初入学习FPGA的同学可以下载看一下

2018-08-05

HEVC测试序列

是一个HEVC测试视频序列的网盘下载链接,对HEVC研究的人可以下载测试一下

2017-06-07

挑战SOC-基于NIOS的SOPC设计于实践

关于NIOS ii开发的一些文档

2017-04-24

在FPGA上实现用数码管显示的计数器

这类代码对于我们初次接触FPGA的学生有很大的帮助。

2015-05-21

FPGA的按键设计

作为对硬件FPGA的初步了解,理解如何进行按键消抖的很好的东西,

2015-05-08

用FPGA做的流水灯

流水灯的设计,可以很好的作为对FPGA的了解,使用Verilog语言实现的

2015-05-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除