Loading autocnet/graph/edge.py +12 −6 Original line number Diff line number Diff line Loading @@ -1010,7 +1010,9 @@ class NetworkEdge(Edge): Measures.sample, Measures.line, Measures.measuretype, Measures.imageid).\ Measures.imageid, Measures.apriorisample, Measures.aprioriline).\ filter(Points.ignore==ignore_point, Measures.ignore==ignore_measure, Measures.jigreject==rejected_jigsaw, Loading @@ -1019,9 +1021,12 @@ class NetworkEdge(Edge): df = pd.read_sql(q.statement, self.parent.engine) matches = [] columns = ['point_id', 'source_measure_id', 'destin_measure_id', 'source', 'source_idx', 'destination', 'destination_idx', 'lat', 'lon', 'geom', 'source_x', 'source_y', 'destination_x', 'destination_y', 'shift_x', 'shift_y', 'original_destination_x', columns = ['point_id', 'source_measure_id', 'destin_measure_id', 'source', 'source_idx', 'destination', 'destination_idx', 'lat', 'lon', 'geom', 'source_x', 'source_y', 'source_apriori_x', 'source_apriori_y', 'destination_x','destination_y', 'destination_apriori_x', 'destination_apriori_y', 'shift_x', 'shift_y', 'original_destination_x', 'original_destination_y'] def net2matches(grp, matches, source, destin): Loading @@ -1035,7 +1040,8 @@ class NetworkEdge(Edge): match = [int(imagea.id), int(imagea.mid), int(imageb.mid), source, 0, destin, 0, None, None, None, imagea['sample'], imagea['line'], imageb['sample'], imageb['line'], imagea['sample'], imagea['line'], imagea['apriorisample'], imagea['aprioriline'], imageb['sample'], imageb['line'], imageb['apriorisample'], imageb['aprioriline'], None, None, None, None] matches.append(match) Loading autocnet/io/db/model.py +4 −0 Original line number Diff line number Diff line Loading @@ -150,8 +150,12 @@ class Matches(BaseMixin, Base): _geom = Column("geom", Geometry('POINT', dimension=2, srid=latitudinal_srid, spatial_index=True)) source_x = Column(Float) source_y = Column(Float) source_apriori_x = Column(Float) source_apriori_y = Column(Float) destination_x = Column(Float) destination_y = Column(Float) destination_apriori_x = Column(Float) destination_apriori_y = Column(Float) shift_x = Column(Float) shift_y = Column(Float) original_destination_x = Column(Float) Loading autocnet/transformation/fundamental_matrix.py +5 −3 Original line number Diff line number Diff line Loading @@ -98,14 +98,16 @@ def compute_reprojection_error(F, x, x1, index=None): n,1 vector of reprojection errors """ if not x.shape[1] == 3 or not x1.shape[1] == 3: raise ValueError('The input points must be homogenous with shape (n,3)') if isinstance(x, (pd.Series, pd.DataFrame)): x = x.values if isinstance(x1, (pd.Series, pd.DataFrame)): x1 = x1.values if x.shape[1] != 3: x = make_homogeneous(x) if x1.shape[1] != 3: x1 = make_homogeneous(x1) # Compute the epipolar lines lines1 = compute_epipolar_lines(F,x) lines2 = compute_epipolar_lines(F.T, x1) Loading Loading
autocnet/graph/edge.py +12 −6 Original line number Diff line number Diff line Loading @@ -1010,7 +1010,9 @@ class NetworkEdge(Edge): Measures.sample, Measures.line, Measures.measuretype, Measures.imageid).\ Measures.imageid, Measures.apriorisample, Measures.aprioriline).\ filter(Points.ignore==ignore_point, Measures.ignore==ignore_measure, Measures.jigreject==rejected_jigsaw, Loading @@ -1019,9 +1021,12 @@ class NetworkEdge(Edge): df = pd.read_sql(q.statement, self.parent.engine) matches = [] columns = ['point_id', 'source_measure_id', 'destin_measure_id', 'source', 'source_idx', 'destination', 'destination_idx', 'lat', 'lon', 'geom', 'source_x', 'source_y', 'destination_x', 'destination_y', 'shift_x', 'shift_y', 'original_destination_x', columns = ['point_id', 'source_measure_id', 'destin_measure_id', 'source', 'source_idx', 'destination', 'destination_idx', 'lat', 'lon', 'geom', 'source_x', 'source_y', 'source_apriori_x', 'source_apriori_y', 'destination_x','destination_y', 'destination_apriori_x', 'destination_apriori_y', 'shift_x', 'shift_y', 'original_destination_x', 'original_destination_y'] def net2matches(grp, matches, source, destin): Loading @@ -1035,7 +1040,8 @@ class NetworkEdge(Edge): match = [int(imagea.id), int(imagea.mid), int(imageb.mid), source, 0, destin, 0, None, None, None, imagea['sample'], imagea['line'], imageb['sample'], imageb['line'], imagea['sample'], imagea['line'], imagea['apriorisample'], imagea['aprioriline'], imageb['sample'], imageb['line'], imageb['apriorisample'], imageb['aprioriline'], None, None, None, None] matches.append(match) Loading
autocnet/io/db/model.py +4 −0 Original line number Diff line number Diff line Loading @@ -150,8 +150,12 @@ class Matches(BaseMixin, Base): _geom = Column("geom", Geometry('POINT', dimension=2, srid=latitudinal_srid, spatial_index=True)) source_x = Column(Float) source_y = Column(Float) source_apriori_x = Column(Float) source_apriori_y = Column(Float) destination_x = Column(Float) destination_y = Column(Float) destination_apriori_x = Column(Float) destination_apriori_y = Column(Float) shift_x = Column(Float) shift_y = Column(Float) original_destination_x = Column(Float) Loading
autocnet/transformation/fundamental_matrix.py +5 −3 Original line number Diff line number Diff line Loading @@ -98,14 +98,16 @@ def compute_reprojection_error(F, x, x1, index=None): n,1 vector of reprojection errors """ if not x.shape[1] == 3 or not x1.shape[1] == 3: raise ValueError('The input points must be homogenous with shape (n,3)') if isinstance(x, (pd.Series, pd.DataFrame)): x = x.values if isinstance(x1, (pd.Series, pd.DataFrame)): x1 = x1.values if x.shape[1] != 3: x = make_homogeneous(x) if x1.shape[1] != 3: x1 = make_homogeneous(x1) # Compute the epipolar lines lines1 = compute_epipolar_lines(F,x) lines2 = compute_epipolar_lines(F.T, x1) Loading