You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
2.1 KiB

import numpy as np
from scipy.optimize import minimize
#保存相机内参、外参等参数
3 months ago
# class Model:
# def __init__(self):
# # 内参
# self.K = np.array([[801.8319, 0, 647.8920],
# [0, 801.7619, 532],
# [0, 0, 1]])
# self.f = 3.6
# self.H = 1019.0000170167332
# self.dx = self.f / self.K[0, 0]
# self.dy = self.f / self.K[1, 1]
# self.u0 = self.K[0, 2]
# self.v0 = self.K[1, 2]
# # 外参
# self.alpha = 0.7072338025822084
# self.beta = 0.9077237961986776
# # 位置修正
# self.y = -70
# self.x = 22
# # 数据截断线
# self.limit_slope = 0.3259949467095897
# self.limit_intercept = 452.86565535382374
class Model:
def __init__(self):
# 内参
3 months ago
# self.K = np.array([[1086.58411235010, 0.00000000e+00, 656.379279306796],
# [0.00000000e+00, 1086.65442545872, 960-489.101890262552],
# [0.00000000e+00, 0.00000000e+00, 1.00000000e+00]])
self.K = np.array([[838.19297892, 0, 658.51580973],
[0, 836.93529706, 960-484.42225009],
[0, 0, 1]])
self.dist_coeffs = [[-4.50688803e-01, 2.60760637e-01, 2.10619624e-04, - 6.69674309e-04, - 4.47846385e-02]]
self.f = 3.6
3 months ago
self.H = 1.007e+03-9
self.dx = self.f / self.K[0, 0]
self.dy = self.f / self.K[1, 1]
self.u0 = self.K[0, 2]
self.v0 = self.K[1, 2]
# 外参
3 months ago
# self.alpha = 8.749e-01
# self.beta = 7.664e-01
3 months ago
# self.alpha = 9.229e-01
# self.beta = 8.599e-01
self.alpha = 9.135e-01
self.beta = 7.271e-01
# self.alpha = 8.110e-01
# self.beta = 8.838e-01
# 位置修正
3 months ago
self.y = 0
self.x = 0
# 数据截断线
3 months ago
self.limit_slope = 0.3533327436076127
self.limit_intercept = 553.8003793475132
# self.q = -1.524e-01
self.q = -2.892e-02
self.gama = 0.5776040711992061