itminus 发布的文章

背景

在云厂商提供廉价的 Linux ECS 方案中,往往只配了单颗虚拟硬盘。一般来说,这类廉价ECS搭配的硬盘的容量都非常小,仅能满足系统本身运行。为了满足日常所需,往往还需要加购第二颗硬盘,为此,我需要了解一点磁盘分区知识。

文件系统的概念

文件系统是存储和管理文件的方法。文件系统使得用户保存数据时,不必关心数据实际保存在硬盘(或者光盘)的数据块地址,只需要记住这个文件的所属目录和文件名。

不同的文件系统具有不同的特性,例如性能、安全性和兼容性。

常见的文件系统有:

  • ext4:常用于Linux系统,具有良好的性能和可靠性。
  • NTFS:常用于Windows系统,支持大文件和权限控制。
  • FAT32:用于跨平台兼容性,但不支持大文件和权限。

磁盘和分区

在Linux中设备出现在/dev/路径下。一个虚拟磁盘往往用vdx表示,其中x=a,b,c,...。比如/dev/vda/dev/vdb、...等。

一块磁盘往往会被划分成多个分区来用作不同的用途。硬盘的第一个扇区(512 字节),包含分区表引导代码,称之为主引导记录(MBR)。其中,分区表记录了磁盘各个分区的起始位置。

阅读剩余部分

本文是机器视觉2D引导定位的第五篇。本文讲述的核心内容是,综合之前的理论知识,练习使用VisionMaster进行单点抓放偏移计算,并用VisionPro自定义工具实现同样的功能。

标定

根据之前讲述的方法,执行12点标定(9点平移+3点旋转),并收集相应照片和对应的物理坐标:

VPro和VMaster交叉验证-采样图片截图.PNG

Hik VisionMaster 得到的标定文件为:

阅读剩余部分

本文是机器视觉2D引导定位的第四篇。主要是在前几篇文章的基础之上,推导单点纠偏理论。

单点纠偏的使用场景是下相机拍物料,然后根据运行时图像特征点位置和角度、以及基准点位置和角度,计算出从运行点移动回基准点需要的移动量

注意,和单点抓放有所不同,单点抓放是从基准位置变换到运行位置,而单点纠偏是把运行位置调整到基准姿态

理论推导

考虑一个旋转+平移的纠偏场景:

单点纠偏-旋转平移.png

显然,单点纠偏是计算\(\vec{Z'Z}\):

阅读剩余部分

本文是机器视觉2D引导定位的第三篇。主要是基于前两篇的理论,使用 Hik VM 进行实践,计算旋转平移标定的偏移量,并与MATLAB手算的结果进行比对。

过程简介

  • 计算仿射变换矩阵
  • 计算旋转中心
  • 注册基准点
  • 计算运行点与基准点的变换参数

在实操上,体现为标定生产两个流程:

VM生产流程截图.png

Hik VM 标定与运行

标定

采集图像过程如下:

  • 九点标定(计算标定矩阵),采集九张图像,同时记录物理坐标
  • 在基准拍照位进行五点拟圆(计算旋转中心),采集五张图像,同时记录物理坐标

阅读剩余部分