fisheye calib视野调整

article/2025/10/5 7:52:12

1.  畸变模型采用

K = np.array([[6.2597563231075685e+02, 0., 1.1601088601848592e+03],[0., 6.2525998102575511e+02, 1.1634786618991664e+03],[0., 0., 1.]])

2. 直接使用

initUndistortRectifyMap和remap时注意调节视野的大小,为了方便得到想要的大小需要借助
estimateNewCameraMatrixForUndistortRectify

参数

fov_scale=1.0时,调整后的新的内参如下:

[[1.02625557e+02 0.00000000e+00 1.16010886e+03], [0.00000000e+00 1.02508230e+02 1.16347352e+03], [0.00000000e+00 0.00000000e+00 1.00000000e+00]]

f/f_new=6.2597563231075685e+02/1.02625557e+02=6.0996076475449175881208615510852

 

fov_scale=0.5时,调整后的新的内参如下:

[[2.05251114e+02 0.00000000e+00 1.16121771e+03], [0.00000000e+00 2.05016460e+02 1.16794704e+03], [0.00000000e+00 0.00000000e+00 1.00000000e+00]]

fov_scale=0.2时,调整后的新的内参如下:

[[5.13127786e+02 0.00000000e+00 1.16454428e+03], [0.00000000e+00 5.12541149e+02 1.18136761e+03], [0.00000000e+00 0.00000000e+00 1.00000000e+00]]

3. 完整代码如下:

    K = np.array([[6.2597563231075685e+02, 0., 1.1601088601848592e+03],[0., 6.2525998102575511e+02, 1.1634786618991664e+03],[0., 0., 1.]])D = np.array([[0.069],[-2.24e-03],[-0.01487],[3.78e-03]])img = cv2.imread("D:/ISP/FourFisheyeLensStitching/images/ENCMFUR/square.png")imgHeight, imgWidth, imgDeep = img.shape# new_K = cv2.fisheye.estimateNewCameraMatrixForUndistortRectify(K, D, (1280, 720), np.eye(3), balance=1)# map1, map2 = cv2.fisheye.initUndistortRectifyMap(K, D, np.eye(3), new_K, (1280, 720), cv2.CV_16SC2)# undistorted_img = cv2.remap(img, map1, map2, interpolation=cv2.INTER_CUBIC, borderMode=cv2.BORDER_CONSTANT)# new_K = cv2.fisheye.estimateNewCameraMatrixForUndistortRectify(K, D, (1280, 720), np.eye(3), balance=1,#                                                                new_size=(3400, 1912), fov_scale=1)# map1, map2 = cv2.fisheye.initUndistortRectifyMap(K, D, np.eye(3), new_K, (3400, 1912), cv2.CV_16SC2)# undistorted_img = cv2.remap(img, map1[575:1295, 23:3119, :], map2[575:1295, 23:3119],#                             interpolation=cv2.INTER_LINEAR, borderMode=cv2.BORDER_CONSTANT)new_K = cv2.fisheye.estimateNewCameraMatrixForUndistortRectify(K, D, (imgWidth, imgHeight), np.eye(3), balance=1.0,new_size=(imgWidth, imgHeight), fov_scale=1.0)map1, map2 = cv2.fisheye.initUndistortRectifyMap(K, D, np.eye(3), new_K, (imgWidth, imgHeight), cv2.CV_16SC2)undistorted_img = cv2.remap(img, map1, map2,interpolation=cv2.INTER_LINEAR, borderMode=cv2.BORDER_CONSTANT)cv2.imwrite('D:/ISP/FourFisheyeLensStitching/images/ENCMFUR/undistorted_square_balance_1.0_fov_scale_1.0.png', undistorted_img)


http://chatgpt.dhexx.cn/article/wSQiXGdp.shtml

相关文章

初识FishEye

一、简介 这几个月一直都在整白盒测试,虽然断断续续,但是也确实学习了不少东西,长了不少见识。今天就要给大家隆重介绍一款非常棒的工具——FishEye! FishEye能够为你打开代码库,并帮助你分析代码,一句话概…

FishEye简介

前言 在项目开发过程中,随着开发的进行,将有大量的代码编写提交到代码仓库,如何能全面准确的了解源代码的变化,提交的频率,代码量的趋势,发现代码的缺陷,将是控制源代码质量的重要指标&#xff…

linux服务器开机提示f1,Dell的Linux服务器开机按F1解决方法

最近买了些二手服务器,dell品牌,性价比还不错,但是一台dell 服务器开机总是提示按F1才能进系统,到底应该怎么解决呢? 请问我的电脑开机老是提示“strike the f1 key to continue ,f2 to run the setup utility”这些&a…

服务器开机显示f1 f2,开机提示按F1/F2才能进入系统的解决方法

电脑开机出现了一个怪现象,那就是每次开机的时候都会有“F1”或者是“F2”的提示,并且要按一下才能正常进入系统,该怎么解决呢?下面秋叶系统小编教大家解决办法! 下图为开机按F1键才能正常进入系统的画面! …

联想计算机启机按F1,电脑开机提示按f1不能正常启动怎么办

电脑开机一般都是自动启动,不过有时出现提示要按f1,否则不能正常启动,怎么回事呢?不知道的朋友可以看看以下关于开机提示F1的解决方法,希望对你有帮助! 电脑开机提示按f1的解决方法 启动电脑需要按F1才能进入系统解决方法:开机时要按F1这是BIOS设置错误引起的,所以可能是…

DELL服务器重启以后需要按F1才能进去系统

1、DELL服务器断电以后启动会一直卡在这个页面,需要手动按F1才能进入系统,解决方法如下: 2、按F2进入到"for System Setup (BIOS)" 3、进入到:system BIOS 4、进入到:Miscellaneous Settings 5、设置 F1…

计算机开机按f1f2,电脑开机总是提示按f1 f2问题的解决办法

一、问题描述 开机后出现如下图界面,无法进入系统。 我们看最后两条: 尝试按F1,可以进入了BIOS, 而按F2却一直卡着,无法进入系统,一会之后又自动关机。 其实这是某品牌主板的通病,特别是一些低端的主板。在我们开机后,一直会出现CMOS Checksum Bad 提示按F1 F2的问题。…

技嘉服务器主板按f1才能进系统,电脑开机要按F1或F2才能进入系统的解决方法

有些电脑有段时间没用,开机后发现进不到系统,显示如下图,必须按F1或者F2才能进入系统,虽然每次也能进入系统,但感觉很烦,这是什么原因呢?下面分享两个电脑开机要按F1或F2才能进入系统的解决方法…

服务器启动显示按f1f2f10,电脑开机提示按f1f2f5 电脑开机要按F1F2F5

电脑开机要求按F1,F2,F3或F5 有朋友跟我反应说他的XP系统,开机的时候要手动按F1才可以进WIN程序。那怎么改成默认的呢?可以尝试下以下方法。方法一、开启计算机或重新启动计算机后,及时按下“Del”键进入BIOS的设置界面…

电脑开机,总需要按F1,是什么原因造成的?

开机需要按F1键,原因有好几个,最常见的是BIOS电池没有电了,更换一块电池即可。 一、什么是BIOS电池 BIOS电池也叫主板电池,位置在主板上面,打开机箱盖子就可以看到啦,样子就是圆圆的一个银币一样的,很好看。 BIOS电池其实和电子秤、电视遥控器里的电池是一样的,一般…

华硕主板开机提示按F1怎么办?华硕主板开机提示按F1的解决方法

最近有很多网友问我的电脑采用的是华硕主板,不过最近在进入黑苹果后再开机出现了F1键,想要在BIOS中关闭F1报错检测,不知道如何操作。开机需要按下F1键,通常这种问题并非是致命性故障,可以直接在主板中关闭。那么华硕主…

按F1才能进系统怎么办?电脑开机需要按f1才能进入系统的解决办法

经常有网友问到一个问题,我电脑开机后提示按f1怎么解决?不管理是台式电脑,还是笔记本,都有可能会遇到开机需要按F1,才能进入系统的问题,引起这个问题的原因比较多,今天小编在这里给大家列举了比…

计算机开机按f1,开机要按F1怎么解决?电脑开机不按F1进去系统的方法

相信很多用户在开启电脑的时候都会这种情况,开机的时候电脑要按F1才能进入系统,如果不按F1就进不了系统桌面。时间长了,会让人非常厌烦。那么要如何设置不按F1就直接进入系统桌面呢?下面就和大家介绍一下电脑开机不按F1直接进去系…

服务器开机显示f1 f2,开机按f1的解决方法|开机按f2的解决方法|电脑开机按f1怎么解决...

2013-12-24 09:55:09  浏览量:1036 相信很多用户都有遇到一个问题,即开机时会出现一大串英文:Hareware Monitor found an error,enter POWER MANAGEMENT SETUP for details,Press F1 to continue,DEL to enter SETUP,提示让你按F1才能继续启动计入系统。 2018-11-25 1…

台式计算机启动时 每次按f1,电脑开机时总是提示要按F1?云骑士告诉你如何解决...

原标题:电脑开机时总是提示要按F1?云骑士告诉你如何解决 电脑开机要按F1的原因及解决办法。想必大家都有遇到过开机要按F1,那这是什么原因呢?如何解决这个问题?下面云骑士来详细介绍下遇到这种问题的原因和解决方法! 电脑开机要按…

计算机开机总要按f1键,为什么开机要按f1键?win7每次开机按f1才能进入系统怎么办...

很多小伙伴遇到电脑每次开机都要按f1才能进入win7旗舰版系统,怎么回事?这说明你电脑的bios里面启动项没有设置好。因为没有设置好,所以就按F1才能能引导你的系统启动。为此,下面给大家讲解win7每次开机按f1才能进入系统的解决方法…

服务器开机必须要按f1才能进系统,教你为什么开机必须按F1才能进入系统

Windows启动按F1才能进入系统怎么取消?若是用户的计算机以前并不需要按F1,但最近突然就需要F1才能进入系统的原因主要和主板电池有关,换一块电池是最直接的方法,不过这个原因也并不是唯一。 Windows启动按F1才能进入系统的原因和解…

计算机开机按f1,电脑开机按F1的原因及解决方法

很多电脑在使用一两年时间以后,或者突然停电、非法关机,再或者电脑CPU风扇故障、硬盘损坏等等原因,电脑就可能会在开机后报“press F1 to continue,DEL to enter SETUP”或“Press F1 Resume”之类的错误,一定要按一下“F1”才能继续启动电脑,每次开机都这样,虽然很多时候…

台式计算机启动时 每次按f1,电脑开机每次都要按f1怎么办|电脑开机要按f1的解决方法...

‍‍ 最近有些朋友向小编反馈,每次电脑开机后都会停留在一个黑屏界面会出现一些提示,比如“diskette drive 0 seek failure”等,按下F1才可以进入系统导致每次开机都很麻烦,那么电脑开机每次都要按f1怎么办呢?下面由小…