欢迎光临
我们一直在努力

RM视觉学习笔记(更新中)

我的笔记放在我的仓库里了(个人学习的笔记,有待完善):

css0527/VisionNote

一、视觉理论学习的书籍:

        OpenCV4快速入门

        动手学计算机视觉

二、git 的学习:

Git(linux)_哔哩哔哩_bilibili

(以下是个人学习的笔记,有待完善)

三、git push时的报错以及解决方案:

        1  error: remote origin already exists.

这个错误表示远程仓库 origin 已经存在了。你需要先更新或删除现有的远程仓库。

解决方法

方法一:更新现有远程仓库地址

git remote set-url origin 你的仓库

方法二:删除后重新添加

git remote remove origin
git remote add origin 你的仓库

        2  大文件推送失败

remote: warning: File 动手学计算机视觉 (沈为,司翀杰,杨辰,俞勇) .pdf is 84.73 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB remote: error: Trace: d5c046ce8bae15284974391fb0c6948e67e0e242841f79ecc7e8c421e5c80fba remote: error: See https://gh.io/lfs for more information. remote: error: File git.docx is 239.40 MB; this exceeds GitHub's file size limit of 100.00 MB remote: error: GH001: Large files detected. You may want to try Git Large File Storage – https://git-lfs.github.com. To https://github.com/css0527/VisionNote.git ! [remote rejected] main -> main (pre-receive hook declined) error: failed to push some refs to 'https://github.com/css0527/VisionNote.git'

这个错误是因为你的仓库中有两个超大文件超过了 GitHub 的限制

解决方案

一、使用 LFS:如果你的账号有足够的 LFS 存储额度(GitHub 免费账户有 1GB 存储和 1GB 月带宽)。

第一步:安装并初始化 Git LFS:首先,确保你电脑上已经安装了 Git LFS。如果还没有,可以从 git-lfs.github.com 下载。然后在终端里运行初始化命令(每个用户只需运行一次):

git lfs install

第二步:追踪大文件类型

告诉 Git LFS 要管理哪些文件类型。因为你的仓库里包含 .pdf 和 .docx 文件,建议直接追踪整个类型。

git lfs track "*.pdf"
git lfs track "*.docx"

执行后,仓库里会自动生成或更新一个名为 .gitattributes 的文件。

第三步:添加追踪文件并迁移已有的大文件

这是最关键的一步。根据官方文档提示,“定义 Git LFS 应跟踪的文件类型本身不会将任何预先存在的文件转换为 Git LFS”,所以我们需要用 git lfs migrate 命令来转换历史记录中的大文件。

# 将 .gitattributes 加入版本控制
git add .gitattributes

# 使用 migrate 命令,将仓库中所有历史记录里的 .pdf 和 .docx 文件迁移至 LFS
git lfs migrate import –include="*.pdf,*.docx" –everything

第四步:强制推送更新

由于 migrate 命令重写了 Git 历史,你需要使用强制推送 (-f) 来更新远程仓库。

git push -f origin main

二、移除大文件:如果这些文件只是参考资料,不需要放在 Git 仓库里

# 从 Git 索引中移除文件(但保留本地副本)
git rm –cached "动手学计算机视觉 (沈为,司翀杰,杨辰,俞勇) .pdf"
git rm –cached git.docx

# 添加到 .gitignore,防止以后再次被提交
echo "*.pdf" >> .gitignore
echo "*.docx" >> .gitignore

# 1. 备份 .gitignore 和想要的文件
# 2. 删除 .git 文件夹
rm -rf .git

# 3. 重新初始化
git init
git branch -M main
git add .
git commit -m "Initial commit"
git remote add origin 你的仓库
git push -u origin main -fgit push -u origin main

四、Ubuntu 失去图形化界面

Ctrl + Alt +F3

sudo systemctl restart gdm

五、神经网络

训练的时候,把数据集标注好了丢给模型进行训练,最后给的是映射,根据图片内容来判断是什么类型的装甲板和它的装甲板角点

每个模型的输入和输出README应该会标注好是多少维的,想要对接的话就要写对应的接口代码,并且将模型输出转化的数据形式能够对接代码

如果没有标注就要自己写测试python程序检测一下,它的输入输出分别是多少维度

重点是标注数据集

六、相机标定

(1)OpenCV

OpenCV相机标定完全指南(有手就行)_相机标定有手就行-CSDN博客

(2)同济大学写好的标定

只需自己拍照,修改配置文件,确认是棋盘格还是圆盘

先把所有清晰可用的照片放入项目文件夹后重命名(重命名根据自己实际情况修改)

# 第一步:.png -> .jpg(使用临时扩展名)
for f in *.png; do
  if [ -f "$f" ]; then
    # 改为临时扩展名 .jpg_temp
    mv "$f" "${f%.bmp}.jpg_temp"
  fi
done

# 第二步:.jpg_temp -> 数字.jpg
i=1
for f in *.jpg_temp; do
  if [ -f "$f" ]; then
    mv "$f" "$i.jpg"
    echo "已重命名:$f -> $i.jpg"
    ((i++))
  fi
done

# 第三步:处理原始的.jpg文件(如果有)
for f in *.jpg; do
  if [ -f "$f" ] && [[ ! "$f" =~ ^[0-9]+\\.jpg$ ]]; then
    mv "$f" "$i.jpg"
    echo "已重命名原始jpg:$f -> $i.jpg"
    ((i++))
  fi
done

serial/serial.h  186 波特率

count=1
for file in *.jpg; do
    mv "$file" "$count.jpg"
    ((count++))
done

count=1
for file in *.jpg; do
    cp "$file" "$count.jpg"
    ((count++))
done

(3)也可用ROS2标定

赞(0)
未经允许不得转载:171主机测评 » RM视觉学习笔记(更新中)
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址