OpenCV 目标跟踪实现
OpenCV (Open Source Computer Vision Library) 是一个跨平台的计算机视觉库,由 Intel 公司发起并参与卡法,以 BSD 许可证授权发行,可以在商业和研究领域中免费使用。OpenCV 可用于开发实时的图像处理、计算机视觉以及模式识别程序。本篇介绍如何使用 OpenCV 实现视觉单目标跟踪。使用的版本信息为:opencv-contrib-python 采用 4.5.4.60, python 采用 3.9.5.
编写代码创建 python 文件:main.py,添加如下代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384#!/usr/bin/env python# -*- coding: utf-8 -*-# @Author : Jinzhong Xu# @Contact ...
you-get 下载视频的方法
you-get 能够方便的下载很多网站上面的视频/音频/图片,如 bilibili 等,特别是能够下载整个视频集所有视频。下面介绍如何使用它下载视频。
安装 you-getyou-get 官网地址: https://you-get.org/. 推荐的下载方法是通过 pip 安装,pip 作为 python 的包管理工具,非常方便下载各种 python 包,you-get 就是其中一个。建议安装 pip 可以使用 miniconda。假设 miniconda 已经安装,且安装好了pip 包管理工具,那么如下一条命令便可以安装 you-get:
1pip install you-get
如果是 Mac 系统,也可以使用如下命令安装
1brew install you-get
使用 you-get查看视频信息12345678910111213141516171819202122232425262728293031323334353637383940414243you-get -i https://www.bilibili.com/video/BV1oW411w7G ...
使用 autossh 保持 ssh 连接
SSH 能够方便我们连接远程服务器,而且,数据的传输是通过加密的方式进行的。有时候,想要进行远程端口转发或者本地端口转发时,总是会因为网络不稳定等以及其他原因导致 SSH 连接中断,这就导致转发的不稳定。本篇介绍一个工具 autossh,它能够保持 SSH 连接的稳定性,即使断网,当网络恢复时也能够自动连接。以 Ubuntu 18.04 为例。
安装 autossh12sudo apt updatesudo apt install autossh
如果是 Mac 系统,可以使用如下命令:
1brew install autossh
autossh 命令介绍autossh 工具自带的参数不多,但 ssh 命令带的参数很多。autossh 命令可以代替 ssh,并且使用 ssh 命令的参数。ssh 的参数可以使用 man ssh 查看。
autossh 的简单语法:
1autossh [-V] [-M port[:echo_port]] [-f] [SSH_OPTIONS]
autossh 自带的参数有
V: causes autossh to display its vers ...
更新 ubuntu 系统内核版本
Ubuntu 系统的内核升级的简单方法。本篇以 Ubuntu 20.04 为例,所有命令均以 root 用户运行。
下载最新内核12345678wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.16.10/amd64/linux-headers-5.16.10-051610_5.16.10-051610.202202161442_all.debwget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.16.10/amd64/linux-headers-5.16.10-051610-generic_5.16.10-051610.202202161442_amd64.debwget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.16.10/amd64/linux-image-unsigned-5.16.10-051610-generic_5.16.10-051610.202202161442_amd64. ...
如何写基金申请书
国家自然科学基金委员会依据《国家自然科学基金条例》和相关管理规定,每年1月份左右都会发布当年度《国家自然科学基金项目指南》,引导申请人申请国家自然科学基金的资助。今年1月19号发布了2022年国家自然科学基金项目指南。该指南对各类项目的定位、申请条件和相关要求分别进行了介绍与说明,是国家自然科学基金资助工作的重要依据。对于从事科学研究工作的科研人员来说,国家自然科学基金就是生存之本,重要性不言而喻。如何写好一个基金申请书关系到能否拿到当前的资助,更甚至影响到一个科研人员的职业生涯。本篇介绍如何写基金申请书,个人收集整理方便查阅。
国家自然科学基金资助类别要想写好申请书,首先需要明确自己想要申请的基金类别。不同的资助类别面向不同的科研人员,要求也不尽相同。国家自然科学基金有如下资助类别:
面上项目:范围广;资助期限4年;每年2万项左右;平均60万左右;平均资助率17%左右
青年科学基金项目:男性未满35周岁,女性未满40周岁;只能获资1次;资助期限3年;每年2万项左右;30万;平均资助率17%左右
地区科学基金项目:指定地区科研人员;资助期限4年;每年3000项左右;平均35万左右 ...
利用 Python 加载网络图片
Python 能够非常方便的进行计算机视觉方向的人工智能编程。利用 Python 可以轻易的处理图片,这主要归功于图像/视频处理相关库或包,如 OpenCV, Pillow, imagio, PyTorch, TensorFlow, matplotlib等。本篇介绍,如何利用 Python 在线加载网络图片,方便后续的图片处理,模型训练等。所有代码以 Jupyter notebook 为运行环境。
假设网络上的图片 url 如下:
1url = "https://p1-tt.byteimg.com/origin/pgc-image/fe41801208fa40d394352e0df71e9202?from=pc"
方法1123456from urllib import requestfrom PIL import Imageimg = Image.open(request.urlopen(url))img
方法2123456import requestsfrom PIL import Imageresponse = requests.get(url ...
使用 transmission-cli 在 linux 命令行下载 torrent
Transmission 是一种流行的跨平台 BitTorrent 客户端,具有多种风格,包括原生 Mac 和 GTK+ 版本,以及任何使用过 uTorrent 的人都熟悉的桌面 GUI。它是许多 Linux 发行版中的默认 BitTorrent 客户端,transmission-cli 可以在大多数官方存储库中找到。本篇以 Ubuntu 为例。
安装12sudo apt updatesudo apt install transmission-cli
使用方法下载 torrent12345transmission-cli http://releases.ubuntu.com/16.10/ubuntu-16.10-desktop-amd64.iso.torrent -w ~/Downloads# 也可以先把 torrent 文件下载到本地,然后再下载wget http://releases.ubuntu.com/16.10/ubuntu-16.10-desktop-amd64.iso.torrenttransmission-cli ubuntu-16.10-desktop-amd6 ...
利用 aria2 在 linux 命令行下载文件
aria2 是一个轻量级的多协议和多源命令行下载实用程序。它支持 HTTP/HTTPS、FTP、SFTP、BitTorrent 和 Metalink。 aria2 可以通过内置的 JSON-RPC 和 XML-RPC 接口进行操作。它具有多连接下载、轻量级、功能齐全的 BitTorrent 客户端、可元链接(Metalink )下载和远程控制等特征。下面介绍如何利用该工具在 Ubuntu 上以命令行的形式下载文件。
安装12sudo apt updatesudo apt install aria2 -y
下载文件aria2 工具在命令行上是 aria2c (aria2 client),可使用该命令下载各种类型的文件,如单个文件、torrent文件、磁力文件等。
根据文件路径下载12345# 直接下载aria2c https://mirrors.zju.edu.cn/ubuntu-releases/20.04.3/ubuntu-20.04.3-desktop-amd64.iso# 下载保存为自定义名字aria2c -o ubuntu20.04.iso https://mi ...
ubuntu 更改镜像源
Ubuntu 是大家常用的 Linux 操作系统,但有时候安装软件时,会遇到连接错误,导致安装失败。比如,我安装 ffmpeg 时就出现无法安装的问题。那么,如何将镜像源切换为阿里源等,使得安装更快。本篇介绍如何为 Ubuntu 更改镜像源。
修改配置文件修改镜像源需要更改配置文件 etc/apt/sources.list,需要 root 权限。建议更改前,先把原文件保存一份
12# 保存原文件sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
修改为阿里源,只需要将 etc/apt/sources.list 中的二级地址改为:mirrors.aliyun.com
修改完上述文件后,需要运行如下命令
1sudo apt update
可用的源不同系统版本,需要的源不同。
喜欢清华源的可访问清华源地址,获取可用源信息。
Ubuntu 20.04,focal:1234567891011121314deb http://mirrors.aliyun.com/ubuntu/ focal main restricted univ ...
FFmpeg 视频处理等相关
FFmpeg 是一个非常受欢迎的、完备的、跨平台的、开源的用于处理多媒体内容(如音频、视频、字幕及其他相关元数据)的库和工具集。本篇介绍 FFmpeg 的相关概念和基本使用方法。所有命令以 Ubuntu 为例进行介绍,Windows 和 Mac 同样适用。
FFmpeg 安装想要使用 FFmpeg (Linux中对应的程序为 ffmpeg),必须首先安装它。Ubuntu(Centos 安装 FFmpeg的方法参考我的另一篇:Centos安装ffmpeg。Ubuntu 切换镜像源的方法参考我的另一篇:ubuntu 更改镜像源) 安装 FFmpeg 非常方便,命令如下:
12sudo apt updatesudo apt install ffmpeg
容器在介绍 FFmpeg 处理视频之前,我们需要对视频有个了解。从计算上来说,视频文件是一个容器 (container),在该容器中包含了视频(图片序列,无声音)、音频、字幕等内容。
常见的视频容器有如下几种,常常以文件后缀名来反映其容器格式:
MP4:常用
MKV:更清晰
WebM:体积更小
AVI:较久远
FFmpeg 支持很多 ...
Ubuntu 明文显示 known hosts
Ubuntu 通过 SSH 连结服务器时,将服务器的基本信息保存在相应用户名下的 .ssh/known_hosts 文件中,但是,默认保存的信息是通过密文保存的,这虽然安全,但不方便自己查看。如想要删除特定服务器信息时不好查找对应的信息。明文显示并不会造成不安全,在 Mac 系统中默认就是以明文显示。本篇介绍如何将信息保存为明文,方便自己查看。
修改配置只需要修改 SSH 的配置信息就可以设置明文保存 SSH 连结的服务器信息。方法如下:
1234sudo vim /etc/ssh/ssh_config# 将 HashKnownHosts 默认值 yes 改为 noHashKnownHosts no
建议先清空 .ssh/known_hosts ,然后再连接将会以明文方式显示。