首页 > 编程语言 >关于monodepth2里面的内参运算

关于monodepth2里面的内参运算

时间:2023-05-01 23:32:14浏览次数:33  
标签:运算 monodepth2 矩阵 内参 相机 宽度 图像 像素


K[0, :] *= self.width // (2 ** scale)
K[1, :] *= self.height // (2 ** scale)


这里相机内参乘了高度和宽度再除的可能是因为原始的相机内参是以图像的比例为单位的,而不是以像素为单位的。比如,如果原始的相机内参矩阵是:

关于monodepth2里面的内参运算_缩放

那么这个矩阵表示的是,相机的焦距是图像宽度和高度的一半,光轴与图像中心重合。如果原始图像的宽度和高度分别是640和480,那么以像素为单位的相机内参矩阵就是:

关于monodepth2里面的内参运算_图像缩放_02

如果将图像缩放到一半,即宽度和高度分别是320和240,那么以像素为单位的相机内参矩阵就是:

关于monodepth2里面的内参运算_图像缩放_03

可以看到,这个矩阵可以通过原始的相机内参矩阵乘以高度和宽度再除以4得到。所以,这里相机内参乘了高度和宽度再除的可能是为了将以图像比例为单位的相机内参转换为以像素为单位的相机内参,并且根据缩放级别进行调整。

标签:运算,monodepth2,矩阵,内参,相机,宽度,图像,像素
From: https://blog.51cto.com/u_12074581/6239436

相关文章

  • J - Simple Game (博弈论外壳下的模运算考察题目)
    原题链接:https://vjudge.net/contest/555710#problem/J手工翻译:Alice和Bob在玩一个游戏有这样一个数列a1,a2,a3,a4……an长度为n,他们轮流移走一个整数当数列中没有可移走的整数时游戏结束,Alice移走的数的和是S1,Bob移走的数的和是S2如果abs(s1-s2)为奇数,Alice赢,否则Bob赢接下来给......
  • HJ89 24点运算 用递归生成器进行数列穷举
    思路:1、对4张牌进行全排序,并输出列表2、分别对排序进行计算尝试,采用穷举方式3、返回结果除了用递归生成器进行数组全排序外,也用模块fromitertools importpermutations,进行全排序。1#输出算式运算顺序从左至右运算,不需要括号确定优先级。23#列举所有排序方式,比如......
  • 移位运算
    概述这里以C语言为例描述移位运算的行为。对于一个位表示为\(x_{w-1}\),\(x_{w-2}\),...,\(x_{0}\)的操作数x,C表达式\(x<<k\)会生成一个値,其位表示为\([\)\(x_{w-k-1}\),\(x_{w-k-2}\),...,\(x_{0}\),0,...,0\(]\)。也就是说,x向左移动k位,丢弃最高的k位......
  • C语言打印上下金字塔的按位取反运算符的精妙用法
    在打印上下金字塔的通常语句用法应该都是像下面这种#include<stdio.h>intmain(){  intn; do{   for(inti=1;i<n;i++){     for(inta=0;a<n-i;a++){       printf("");     }    for(intj=0;j<2*i-1;j++){     ......
  • java基础-算术运算符(加减乘除取余),隐式转换、强制转换
    一、运算符和表达式的定义运算符:对字面量或者变量进行操作的符号。表达式:用运算符把自变量连接起来,符合java语法的式子就可以称为表达式。例如:inta=10;intb=20;intc=a+b;其中,+,是运算符,并且是算术运算符;a+b是表达式,由于+是算数运算符,所以这个表达式叫算术表达式。二、......
  • matlab学习1(基本操作、stringchar、矩阵运算、基础图)
    1.matlab简介matlab是矩阵实验室,数据是以矩阵的形式存在。2.基本操作1).直接在命令行输入指令2).在脚本文件章编写程序后运行脚本文件:存放代码的文件,尾缀:.m实时脚本文件界面方便,将结果实时显示在代码旁边(可以加代码,图片,类似于一个文档编辑器,很推荐使用)3).在函数文......
  • Debug Assertion Failed!:Expression: can't dereference out of range vector iterato
    1#include<iostream>2#include<vector>3usingnamespacestd;4boolFind(inttarget,vector<int>array){5autobegin=array.begin(),end=array.end(),mid=begin+(end-begin)/2;6while((target!=*mid)&&a......
  • [逻辑代数基础]#1 基本运算与复合运算
    基本运算运算表达式真值表与(AND)$A·B$或(OR)$A+B$非(NOT)$A'$、$\overline{A}$、$\simA$、$\negA$均可。出于便利的考虑。下文使用$A'$表示非运算。非运算优先级高于与或。复合运算运算逻辑表达式真值表与非/NAND$Y=(A·B)'=A'+B'$......
  • P4681 [THUSC2015]平方运算 题解
    题面链接简要题意给定一个序列,区间.map([](intx){x=x*x%p;});,区间求和。p给定,为小质数。\(N,M\le10^5\)。题解而把一个数看作一个点,向其平方取模连一条边,则最终必然构成一个基环森林,注意到\(P\)很小,每个数经过\(11\)次迭代之后就会进入环中。对于一个区间,如......
  • Java算数运算符(++和--)
    1.++和--单独使用就是自增和自减i++-->i=i+1++i-->i=i+1i---->i=i-1--i-->i=i-12.++和--作为表达式使用j=++i-->先自增后赋值-->i=i+1;j=ij=i++-->先赋值后自增-->j=i;i=i+1j=--i-->先自减后赋值-->i=i-1;j=ij=i---->先......