Ubuntu 上安装 vlc 并使用 root 用户播放
VLC 多媒体播放器,最初名为 VideoLAN Client,是 VideoLAN 计划的开放源代码多媒体播放器。支持众多音频与视频解码器及文件格式,并支持DVD 影音光盘、VCD 影音光盘及各类流协议。它也能作为单播或多播的流服务器在 IPv4 或 IPv6 的高速网络连线下使用。VLC 支持多平台,如 Windows, Linux, MacOS, Android, ios 等,同时支持 SMB. 本篇介绍如何在 Ubuntu 上安装它并解决无法用 root 播放 vlc 的问题。
安装 vlc1sudo apt update && sudo apt install vlc -y
root 用户播放默认 root 用户无法打开 vlc,强制打开可能会报如下错误:
VLC is not supposed to be run as root. Sorry. If you need to use real-time priorities and/or privileged TCP ports you can use vlc-wrapper (make s ...
本地大模型部署方案之一:ollama 和 open webui
大语言模型的成功,让我们感觉到人类已经站在智能化时代的起点。ollama 无疑是目前相对比较容易启动并运行大型语言模型的解决方案之一,经过一段时间的测试使用,发现它非常适合本地部署使用各种开源大模型,运行效率高,速度快。结合 open webui 能够提供类似于 chatgpt 一样的效果。
安装 ollama这里以 Ubuntu 18.04 为例,其他系统的安装请参考ollama官网.
最简单的方式是一键式安装:
1curl -fsSL https://ollama.com/install.sh | sh
不过,我更喜欢的是手动安装和卸载,因为我自己已经安装好 CUDA 驱动等:
12345678910111213141516171819202122232425262728293031sudo curl -L https://ollama.com/download/ollama-linux-amd64 -o /usr/local/bin/ollamasudo chmod +x /usr/local/bin/ollamasudo useradd -r -s /bin/false -m ...
NVIDIA GPU 显存释放
当我们使用 Nvidia GPU 训练深度学习模型时,特别是使用分布式多 GPU 时,因认为的终端程序,导致子线程(其实是子进程加载数据等)无法关闭,使得 GPU 显存一直占用,但是使用 nvidia-smi 却无法显示进程名等信息。本篇介绍如何彻底恢复 GPU 显存。
释放显存方案通过找到真正占用显存的进程,然后杀死进程后达到是否显存。
12345678910111213141516171819# 指定第 0 号 GPU 进程占用fuser -v /dev/nvidia0# 指定所有 GPU 进程占用fuser -v /dev/nvidia*# 根据进程 PID 查看程序内容sudo ls -l /proc/PID# 如果是 PYTHON 程序,会有 exe,cwd 等信息sudo ls -l /proc/PID | grep exesudo ls -l /proc/PID | grep cwd# 如果查询发现该进程就是占用显存的进程,那么直接杀死sudo kill -9 PID# 清除进程后,再次查看显存占用# 一般会有多个进程占用 GPU 显存,可以都查看下,是否需要杀死, ...
vboxmange 管理 virtualbox 虚拟机
使用 virtualbox 安装、管理虚拟机非常方便,而且该软件是开源的,使用起来更加简单。本篇介绍如何使用命令行工具 vboxmanage 管理 virtualbox 虚拟机。
以下所有命令中的 vboxmanage 均可以使用 VBoxManage 代替。
启动虚拟机12345678# 以图像界面启动虚拟机vboxmanage startvm vmname --type gui# 以无图像界面启动虚拟机,可远程登录vboxmanage startvm vmname --type headless# 重启虚拟机vboxmanage controlvm vmname reset
关闭虚拟机12345# 正常关机,类似于点击关闭按钮vboxmanage controlvm vmname acpipowerbutton# 强制关机,类似于直接关闭电源vboxmanage controlvm vmname poweroff
查看虚拟机12345678# 列出所有虚拟机,运行的和未运行的vboxmanage list vms# 列出运行的虚拟机vboxmanage list runni ...
奇异值分解图像压缩
奇异值分解是数学矩阵分析的一种方法,能够将任意形状的(不仅包含方阵)矩阵分解为正交阵和(近似)对角阵的乘积的形式。该方法在很多领域都有应用,如图像压缩、推荐系统等。本篇简要介绍。
理论假设 $A_{m\times n}$ 为一个 $m\times n$ 实矩阵,则 $A^TA$ 为一个 $n$ 阶实对称矩阵,所以存在正交矩阵 $V=(v_1, v_2, \cdots, v_n)$ 使得
$$
V^T(A^TA)V = \text{diag}(\lambda_1, \lambda_2, \cdots, \lambda_n),
$$
其中 $v_i$ 为 $A^TA$ 的对应于特征值 $\lambda_i$ 的单位特征向量,有
$$
\lambda_i = \lambda_i v^T_i v_i = v^T_i(\lambda_i v_i) = v^T_i(A^T Av_i) = (Av_i)^T(Av_i) = \parallel Av_i \parallel^2 \geq 0.
$$
对特征值从大到小排序,$\lambda_1 \geq \lambda_i \ ...
PCA 人脸识别
PCA(Principal Component Analysis) 作为一种数学矩阵分析方法,能够约简多元数据集,在许多领域有重要应用,本篇介绍 PCA 应用于人脸识别。
问题给定一组具有 $m$ 个样本的 $n$ 维数据 ${a_1, a_2, \cdots, a_m }$,如何找到特殊的较少方向使得数据在该方向上的投影方差最大。方差大说明在新空间中数据更容易分离,更方便判断类别等。
理论将每个样本写成列向量,得到矩阵:
$$
A = \bigl(
\begin{smallmatrix}
a_1 & a_2 & \cdots & a_m
\end{smallmatrix}
\bigr)
$$
为了方便,我们先对矩阵 $A$ 沿着行方向求取平均值,然后将 $A$ 的每一行减去对应的均值。这样做能够约简 $A$,方便计算。
寻找主方向 $u$,使得 $A$ 在该方向的投影方差尽量大,方差最大的方向就是主方向。即
$$
Var(A \cdot u) = (Au)^T(Au) = u^T A^T Au.
$$
为目标函数。一般地,我们选择单位方向 $u$,所以有 $u^Tu& ...
code-server 的安装与使用
Visual Studio Code(简称 vscode)是一款由微软开发且跨平台的免费源代码编辑器,结合插件能够用于多种语言程序开发(如 python, java, javascript, go 等)。但是其属于一款客户端软件,在远程服务器上使用不如 code-server,code-server 是一款能够在网页上使用的 vscode,极大的方便程序开发人员快速访问与编码。本篇介绍如何在 ubuntu 18.04 上安装和配置,使其适用于 python 开发。
安装123456wget https://github.com/coder/code-server/releases/download/v4.23.0/code-server-4.23.0-linux-amd64.tar.gztar -xzvf code-server-4.23.0-linux-amd64.tar.gzsudo mv code-server-4.23.0-linux-amd64 /usr/local/code-server# 首次运行/usr/local/code-server/bin/code-serve ...
ubuntu 终端上查看图像文件及元信息
当想要查看远程服务器上的文件(如图片)时,通过远程桌面可以实现,但是又太笨重了。通过(支持 X11 的终端,如 mobaxterm, windterm, putty 等) SSH 远程访问服务器相对更轻量,然后直接在终端上输入命令直接在本地打开远程服务器上的图片等内容,显示图像元信息等。本篇介绍几个常用的命令行工具查看图片及元信息等。
打开图像打开图像的命令行工具有很多,如 xdg-open, display, eog, fim 等。
xdg-openxdg-open 命令不仅能够打开图片还能够打开其他文件,它以文件的默认打开程序打开文件。
12345# 使用默认程序打开文件xdg-open images/000.png# 使用默认程序打开文件夹xdg-open images
displaydisplay 命令是 ImageMagick 提供的一个查看图片文件的工具,且通过了对图像进行一些列的增强等功能,想要使用它需要先安装(其他版本的 linux 发行版也可以使用,可根据情况安装):
12sudo apt updatesudo apt install imagemagick
使 ...
CFBI+, Collaborative Video Object Segmentation by Multi-Scale Foreground-Background Integration
本篇介绍发表在 CVPR 2020 和 TPAMI 2021 上的文章:Collaborative Video Object Segmentation by Multi-Scale Foreground-Background Integration,基于多尺度的前景和背景整合的半监督视频目标分割方法。这篇文章是前篇 CFBI 的扩展与升级,增加了多尺度和空洞匹配到 CFBI。
文章资源
预印本 (Preprint):arxiv
正式发表版本 (Version of Record, VOR):TPAMI 2021
代码仓库:github,同 CFBI 仓库。
题目文章题目是 Collaborative Video Object Segmentation by Multi-Scale Foreground-Background Integration,指明文章的应用领域是视频目标分割(Video Object Segmentation, VOS),文章提出同时考虑多尺度的前景和背景信息(Foreground-Background Integration)来解决视频目标分割(VOS)任 ...
mac 中 chrome 快捷键
mac 上使用 chrome 快捷键记录。
快捷键(short-cut key)
功能
⌘ + r
刷新当前页面
⌘ + shift + r
强制刷新当前页面
⌘ + l
光标跳到地址栏并选中
⌘ + c
拷贝
⌘ + v
粘贴
⌘ + x
剪切
⌘ + w
关闭当前页面
⌘ + t
打开新的标签页
⌘ + n
打开新的窗口
⌘ + shift + n
打开新的无痕窗口
ctrl + PgDn
跳转到下一个页面
ctrl + PgUp
跳转到上一个页面
⌘ + i
跳转到第i个页面
⌘ + 9
跳转到最后一个页面
⌘ + 左方向键
后退
⌘ + 右方向键
前进
CFBI, Collaborative Video Object Segmentation by Foreground-Background Integration
本篇介绍发表在 ECCV 2020 上的文章:Collaborative Video Object Segmentation by Foreground-Background Integration,前景和背景整合的半监督视频目标分割方法。
文章资源
预印本 (Preprint):arxiv
正式发表版本 (Version of Record, VOR):ECCV 2020
代码仓库:github
题目文章题目是 Collaborative Video Object Segmentation by Foreground-Background Integration,指明文章的应用领域是视频目标分割(Video Object Segmentation, VOS),文章提出同时考虑前景和背景信息(Foreground-Background Integration)来解决视频目标分割(VOS)任务。
作者文章作者分别是 Zongxin Yang, Yunchao Wei, Yi Yang。三位作者都是来自澳大利亚悉尼科技大学人工智能中心 ReLER,第一作者杨宗鑫博士当时在该学校攻读计 ...