diff --git a/applications/src/main/java/boofcv/app/SceneReconstruction.java b/applications/src/main/java/boofcv/app/SceneReconstruction.java
index 67ec539f8f..4bf300f3f7 100644
--- a/applications/src/main/java/boofcv/app/SceneReconstruction.java
+++ b/applications/src/main/java/boofcv/app/SceneReconstruction.java
@@ -620,7 +620,7 @@ public void handleFused( String name, GrayF32 inverseDepth ) {
}
private void saveSparseCloudToDisk( File outputDirectory ) {
- checkTrue(scene.isHomogenous());
+ checkTrue(scene.isHomogeneous());
List cloudXyz = new ArrayList<>();
Point4D_F64 world = new Point4D_F64();
diff --git a/change.txt b/change.txt
index 43c4ec20ab..5312c65578 100644
--- a/change.txt
+++ b/change.txt
@@ -8,6 +8,12 @@ Version Meaning: ..
---------------------
Date : 2024/XXX/XX
+Version : 1.1.6
+
+- Homogenous -> Homogeneous (Wide spread spelling error)
+
+---------------------
+Date : 2024/Jun/27
Version : 1.1.5
- PerspectiveOps
diff --git a/examples/src/main/java/boofcv/examples/reconstruction/ExampleMultiViewSparseReconstruction.java b/examples/src/main/java/boofcv/examples/reconstruction/ExampleMultiViewSparseReconstruction.java
index 35b5850781..5dd93b7b5a 100644
--- a/examples/src/main/java/boofcv/examples/reconstruction/ExampleMultiViewSparseReconstruction.java
+++ b/examples/src/main/java/boofcv/examples/reconstruction/ExampleMultiViewSparseReconstruction.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -348,7 +348,7 @@ public void bundleAdjustmentRefine() {
* scene.
*/
public void visualizeSparseCloud() {
- checkTrue(scene.isHomogenous());
+ checkTrue(scene.isHomogeneous());
List cloudXyz = new ArrayList<>();
Point4D_F64 world = new Point4D_F64();
@@ -365,7 +365,7 @@ public void visualizeSparseCloud() {
( viewIdx ) -> viewIdx + "", // String encodes the image's index
( pointIdx, r, g, b ) -> rgb.set(pointIdx, (r << 16) | (g << 8) | b)); // Assign the RGB color
- // Convert the structure into regular 3D points from homogenous
+ // Convert the structure into regular 3D points from homogeneous
for (int i = 0; i < scene.points.size; i++) {
scene.points.get(i).get(world);
// If the point is at infinity it's not clear what to do. It would be best to skip it then the color
diff --git a/examples/src/main/java/boofcv/examples/sfm/ExampleBundleAdjustmentGraph.java b/examples/src/main/java/boofcv/examples/sfm/ExampleBundleAdjustmentGraph.java
index e44f32ab53..b3bb7312c4 100644
--- a/examples/src/main/java/boofcv/examples/sfm/ExampleBundleAdjustmentGraph.java
+++ b/examples/src/main/java/boofcv/examples/sfm/ExampleBundleAdjustmentGraph.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -55,8 +55,8 @@ public static void main( String[] args ) {
var view0_to_view1 = eulerXyz(-0.15, 0.05, 0, 0, 0, 0.05, null);
// Initialize data structures by telling it the number of features, cameras, views, motions
- // Homogenous coordinates will be used since they can handle points at infinity
- var structure = new SceneStructureMetric(/*homogenous*/ true);
+ // Homogeneous coordinates will be used since they can handle points at infinity
+ var structure = new SceneStructureMetric(/*homogeneous*/ true);
var observations = new SceneObservations();
// Index of the motion where the stereo baseline is stored
diff --git a/examples/src/main/java/boofcv/examples/sfm/ExampleTrifocalTensorUses.java b/examples/src/main/java/boofcv/examples/sfm/ExampleTrifocalTensorUses.java
index fae3fdb980..366d1baa9e 100644
--- a/examples/src/main/java/boofcv/examples/sfm/ExampleTrifocalTensorUses.java
+++ b/examples/src/main/java/boofcv/examples/sfm/ExampleTrifocalTensorUses.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -62,7 +62,7 @@ public static void main( String[] args ) {
// One thing that you can do with a trifocal tensor is transfer points from one view onto another
// Similar to what you would do with a homography.
AssociatedTriple match = inliers.get(4);
- Point3D_F64 predicted3 = new Point3D_F64(); // pixel, but in homogenous coordinates
+ Point3D_F64 predicted3 = new Point3D_F64(); // pixel, but in homogeneous coordinates
MultiViewOps.transfer_1_to_3(tensor, match.p1, match.p2, predicted3);
System.out.printf("Predicted x3=(%.1f, %.1f) actual=(%.1f, %.1f)\n",
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/Estimate1ofPrNP.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/Estimate1ofPrNP.java
index ef34b7816b..13f2d0ff88 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/Estimate1ofPrNP.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/Estimate1ofPrNP.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -25,7 +25,7 @@
/**
*
* Interface for computing multiple solution to the Projective N-Point (PrNP) problem. Given a set of
- * observations from a single view and the known 3D homogenous location of the points being observed, estimate
+ * observations from a single view and the known 3D homogeneous location of the points being observed, estimate
* the projective camera transform.
*
*
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/EstimateNofPrNP.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/EstimateNofPrNP.java
index 85851eb0a8..01ec34d9d2 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/EstimateNofPrNP.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/EstimateNofPrNP.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -25,7 +25,7 @@
/**
*
* Interface for computing multiple solution to the Projective N-Point (PrNP) problem. Given a set of
- * observations from a single view and the known 3D homogenous location of the points being observed, estimate
+ * observations from a single view and the known 3D homogeneous location of the points being observed, estimate
* the projective camera transform.
*
*
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/RefineTriangulateMetricH.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/RefineTriangulateMetricH.java
index ed5eee23e5..7d9e8cf526 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/RefineTriangulateMetricH.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/RefineTriangulateMetricH.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -25,7 +25,7 @@
import java.util.List;
/**
- * Refines a triangulated point's (homogenous coordinate) location using non-linear optimization. A calibrated
+ * Refines a triangulated point's (homogeneous coordinate) location using non-linear optimization. A calibrated
* camera is assumed. All observations are in normalized image coordinates.
*
* @author Peter Abeles
@@ -37,8 +37,8 @@ public interface RefineTriangulateMetricH {
*
* @param observations Observations of feature in N views. Normalized image coordinates.
* @param listWorldToView Coordinate transforms for each view. World to View.
- * @param worldPt Initial estimate of point in world coordinates. Homogenous.
- * @param refinedPt The refined estimated point position. Homogenous.
+ * @param worldPt Initial estimate of point in world coordinates. Homogeneous.
+ * @param refinedPt The refined estimated point position. Homogeneous.
* @return if successful or not
*/
boolean process( List observations,
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2PointingMetricH.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2PointingMetricH.java
index ec28a2984c..37901c9afc 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2PointingMetricH.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2PointingMetricH.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -23,7 +23,7 @@
import georegression.struct.se.Se3_F64;
/**
- * Triangulate the location of a homogenous 3D point from two views of a feature given a 3D pointing vector.
+ * Triangulate the location of a homogeneous 3D point from two views of a feature given a 3D pointing vector.
*
* @author Peter Abeles
*/
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2ViewsMetricH.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2ViewsMetricH.java
index 1751361764..9a21abaf2c 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2ViewsMetricH.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2ViewsMetricH.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -23,7 +23,7 @@
import georegression.struct.se.Se3_F64;
/**
- * Triangulate the location of a homogenous 3D point from two views of a feature given a calibrated
+ * Triangulate the location of a homogeneous 3D point from two views of a feature given a calibrated
* camera and known camera motion.
*
* @author Peter Abeles
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2ViewsProjective.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2ViewsProjective.java
index f38a6b7325..e0f0886888 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2ViewsProjective.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/Triangulate2ViewsProjective.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -37,7 +37,7 @@ public interface Triangulate2ViewsProjective {
* @param obsB View from position B in pixels
* @param projectionA Camera matrix for view A. x = P*X
* @param projectionB Camera matrix for view B. x = P*X
- * @param foundInA The found triangulated 3D point in A's reference frame. Homogenous coordinates.
+ * @param foundInA The found triangulated 3D point in A's reference frame. Homogeneous coordinates.
* @return true if successful, false otherwise.
*/
boolean triangulate( Point2D_F64 obsA, Point2D_F64 obsB,
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/TriangulateNViewsMetricH.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/TriangulateNViewsMetricH.java
index 47d7c4ec1f..ee2d55f2a9 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/TriangulateNViewsMetricH.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/TriangulateNViewsMetricH.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2020, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -25,7 +25,7 @@
import java.util.List;
/**
- * Triangulate the location of a 3D point in homogenous coordinates from N views a calibrated camera and known poses.
+ * Triangulate the location of a 3D point in homogeneous coordinates from N views a calibrated camera and known poses.
*
* @author Peter Abeles
*/
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/TriangulateNViewsProjective.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/TriangulateNViewsProjective.java
index 8123b90c56..fcce059417 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/TriangulateNViewsProjective.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/TriangulateNViewsProjective.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -37,7 +37,7 @@ public interface TriangulateNViewsProjective {
*
* @param observations (Input) Observations of the 3D point in pixel coordinates from different camera views
* @param cameraMatrices (Input) Camera projection matrices. x = A*X
- * @param location (Output) Homogenous coordinate of 3D feature in world coordinates.
+ * @param location (Output) Homogeneous coordinate of 3D feature in world coordinates.
* @return true if successful, false otherwise.
*/
boolean triangulate( List observations, List cameraMatrices, Point4D_F64 location );
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/MetricBundleAdjustmentUtils.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/MetricBundleAdjustmentUtils.java
index 2d7c559a44..69c7351b0b 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/MetricBundleAdjustmentUtils.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/MetricBundleAdjustmentUtils.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -56,9 +56,9 @@ public class MetricBundleAdjustmentUtils implements VerbosePrint {
@Nullable PrintStream verbose;
- public MetricBundleAdjustmentUtils( @Nullable ConfigTriangulation triangulation, boolean homogenous ) {
+ public MetricBundleAdjustmentUtils( @Nullable ConfigTriangulation triangulation, boolean homogeneous ) {
triangulator = FactoryMultiView.triangulateNViewMetricH(triangulation);
- structure = new SceneStructureMetric(homogenous);
+ structure = new SceneStructureMetric(homogeneous);
var configSba = new ConfigBundleAdjustment();
configSba.optimizer.type = ConfigNonLinearLeastSquares.Type.LEVENBERG_MARQUARDT;
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/PruneStructureFromSceneProjective.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/PruneStructureFromSceneProjective.java
index 45503397a2..2518f27f35 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/PruneStructureFromSceneProjective.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/PruneStructureFromSceneProjective.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -72,7 +72,7 @@ public void pruneObservationsByErrorRank( double inlierFraction ) {
v.getPixel(indexInView, observation);
// Get feature location in world and predict the pixel observation
- if (structure.homogenous) {
+ if (structure.homogeneous) {
f.get(X4);
PerspectiveOps.renderPixel(view.worldToView, X4, predicted);
} else {
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/ScaleSceneStructure.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/ScaleSceneStructure.java
index 20a89b1b91..1dabc9c8d0 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/ScaleSceneStructure.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/ScaleSceneStructure.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -31,10 +31,10 @@
/**
* Normalizes variables in the scene to improve optimization performance. Different normalization is applied
- * depending on the points being homogenous or not, metric or projective.
+ * depending on the points being homogeneous or not, metric or projective.
*
*
- * Homogenous:
+ * Homogeneous:
* Each point is normalized such that the F-norm is equal to 1. Same goes for translation if metric.
*
*
@@ -92,8 +92,8 @@ public ScaleSceneStructure() {
public void applyScale( SceneStructureMetric structure,
SceneObservations observations ) {
- if (structure.homogenous) {
- applyScaleToPointsHomogenous(structure);
+ if (structure.homogeneous) {
+ applyScaleToPointsHomogeneous(structure);
} else {
computePointStatistics(structure.points);
applyScaleToPoints3D(structure);
@@ -111,8 +111,8 @@ public void applyScale( SceneStructureMetric structure,
*/
public void applyScale( SceneStructureProjective structure,
SceneObservations observations ) {
- if (structure.homogenous) {
- applyScaleToPointsHomogenous(structure);
+ if (structure.homogeneous) {
+ applyScaleToPointsHomogeneous(structure);
} else {
computePointStatistics(structure.points);
applyScaleToPoints3D(structure);
@@ -278,7 +278,7 @@ private void applyScaleTranslation3D( SceneStructureProjective structure ) {
public void undoScale( SceneStructureMetric structure,
SceneObservations observations ) {
- if (structure.homogenous)
+ if (structure.homogeneous)
return;
double scale = desiredDistancePoint/medianDistancePoint;
@@ -312,7 +312,7 @@ public void undoScale( SceneStructureMetric structure,
public void undoScale( SceneStructureProjective structure,
SceneObservations observations ) {
- if (!structure.homogenous) {
+ if (!structure.homogeneous) {
double scale = desiredDistancePoint/medianDistancePoint;
@@ -388,7 +388,7 @@ void applyScaleToPoints3D( SceneStructureCommon structure ) {
}
}
- void applyScaleToPointsHomogenous( SceneStructureCommon structure ) {
+ void applyScaleToPointsHomogeneous( SceneStructureCommon structure ) {
Point4D_F64 p = new Point4D_F64();
for (int i = 0; i < structure.points.size; i++) {
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructure.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructure.java
index c6874e6d47..30f787da4a 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructure.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructure.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2018, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -25,11 +25,11 @@
*/
public interface SceneStructure {
/**
- * If true then homogenous coordinates are being used.
+ * If true then homogeneous coordinates are being used.
*
- * @return true if homogenous coordinates
+ * @return true if homogeneous coordinates
*/
- boolean isHomogenous();
+ boolean isHomogeneous();
int getParameterCount();
}
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureCommon.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureCommon.java
index 99bf1f5745..e82538ae09 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureCommon.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureCommon.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -44,24 +44,24 @@
public abstract class SceneStructureCommon implements SceneStructure {
public final DogArray cameras = new DogArray<>(Camera::new, Camera::reset);
public DogArray points;
- /** True if homogenous coordinates are being used */
- protected boolean homogenous;
+ /** True if homogeneous coordinates are being used */
+ protected boolean homogeneous;
/** number of elements in a point. Will be 3 or 4 */
protected @Getter int pointSize;
- protected SceneStructureCommon( boolean homogenous ) {
- setHomogenous(homogenous);
+ protected SceneStructureCommon( boolean homogeneous ) {
+ setHomogeneous(homogeneous);
}
/**
- * Used to change if homogenous coordinates are used or not. All past points are discarded when this function is
+ * Used to change if homogeneous coordinates are used or not. All past points are discarded when this function is
* called
*
- * @param homogenous true for homogenous coordinates or false for 3D cartesian
+ * @param homogeneous true for homogeneous coordinates or false for 3D cartesian
*/
- public void setHomogenous( boolean homogenous ) {
- this.homogenous = homogenous;
- pointSize = homogenous ? 4 : 3;
+ public void setHomogeneous( boolean homogeneous ) {
+ this.homogeneous = homogeneous;
+ pointSize = homogeneous ? 4 : 3;
points = new DogArray<>(() -> new Point(pointSize), Point::reset);
}
@@ -78,7 +78,7 @@ public void setPoint( int which, double x, double y, double z ) {
}
/**
- * Specifies the location of a point as a 3D homogenous coordinate
+ * Specifies the location of a point as a 3D homogeneous coordinate
*
* @param which Which point is being specified
* @param x coordinate along x-axis
@@ -290,7 +290,7 @@ public double distanceSq( Point3D_F64 p ) {
}
/**
- * Normalize a point in homogenous coordinate so that it's f-norm is 1
+ * Normalize a point in homogeneous coordinate so that it's f-norm is 1
*/
public void normalizeH() {
double n = 0;
@@ -325,8 +325,8 @@ public double distance( Point p ) {
}
@Override
- public boolean isHomogenous() {
- return homogenous;
+ public boolean isHomogeneous() {
+ return homogeneous;
}
public int getObservationCount() {
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureMetric.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureMetric.java
index 75cbe96b35..89cbd3e747 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureMetric.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureMetric.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -60,10 +60,10 @@ public class SceneStructureMetric extends SceneStructureCommon {
/**
* Configure bundle adjustment
*
- * @param homogenous if true then homogeneous coordinates are used
+ * @param homogeneous if true then homogeneous coordinates are used
*/
- public SceneStructureMetric( boolean homogenous ) {
- super(homogenous);
+ public SceneStructureMetric( boolean homogeneous ) {
+ super(homogeneous);
}
/**
@@ -371,13 +371,13 @@ public boolean projectToPixel( int pointIdx, int viewIdx,
View view = views.get(viewIdx);
getWorldToView(view, world_to_view, tmpSE);
- // extract the coordinate for 3D and homogenous case
+ // extract the coordinate for 3D and homogeneous case
Point p = points.get(pointIdx);
double x, y, z, w;
x = p.coordinate[0];
y = p.coordinate[1];
z = p.coordinate[2];
- w = homogenous ? p.coordinate[3] : 1.0;
+ w = homogeneous ? p.coordinate[3] : 1.0;
// Project the pixel while being careful of points at infinity
BundleAdjustmentCamera camera = Objects.requireNonNull(getViewCamera(view).model);
@@ -428,7 +428,7 @@ public Rigid getRigid(int rigidIdx ) {
* @return true if identical to within specified float tolerance and false if not
*/
public boolean isIdentical( SceneStructureMetric m, double tol ) {
- if (isHomogenous() != m.isHomogenous())
+ if (isHomogeneous() != m.isHomogeneous())
return false;
if (views.size != m.views.size)
return false;
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureProjective.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureProjective.java
index f31017e9bd..579a6d0d16 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureProjective.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/bundle/SceneStructureProjective.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2020, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -25,7 +25,7 @@
/**
* Specifies a scene in an arbitrary projective geometry for Bundle Adjustment. Each view
* is specified using a 3x4 projective camera matrix. Points for the scene can be 3D or 4D
- * homogenous coordinates.
+ * homogeneous coordinates.
*
* @author Peter Abeles
*/
@@ -35,10 +35,10 @@ public class SceneStructureProjective extends SceneStructureCommon {
/**
* Configure bundle adjustment
*
- * @param homogenous if true then homogeneous coordinates are used
+ * @param homogeneous if true then homogeneous coordinates are used
*/
- public SceneStructureProjective( boolean homogenous ) {
- super(homogenous);
+ public SceneStructureProjective( boolean homogeneous ) {
+ super(homogeneous);
}
/**
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/triangulate/TriangulateRefineProjectiveLS.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/triangulate/TriangulateRefineProjectiveLS.java
index 3245835de2..58f2abc01d 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/triangulate/TriangulateRefineProjectiveLS.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/triangulate/TriangulateRefineProjectiveLS.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -32,7 +32,7 @@
import java.util.List;
/**
- * Nonlinear least-squares triangulation for projective geometry in homogenous coordinates.
+ * Nonlinear least-squares triangulation for projective geometry in homogeneous coordinates.
*
* @author Peter Abeles
*/
diff --git a/main/boofcv-geo/src/main/java/boofcv/abst/geo/triangulate/WrapNViewsTriangulateMetricDLT.java b/main/boofcv-geo/src/main/java/boofcv/abst/geo/triangulate/WrapNViewsTriangulateMetricDLT.java
index c0a362b898..3adb6afc7f 100644
--- a/main/boofcv-geo/src/main/java/boofcv/abst/geo/triangulate/WrapNViewsTriangulateMetricDLT.java
+++ b/main/boofcv-geo/src/main/java/boofcv/abst/geo/triangulate/WrapNViewsTriangulateMetricDLT.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -50,7 +50,7 @@ public boolean triangulate( List observations, List listWo
return false;
}
- PerspectiveOps.homogenousTo3dPositiveZ(pointH, 1e20, UtilEjml.EPS, location);
+ PerspectiveOps.homogeneousTo3dPositiveZ(pointH, 1e20, UtilEjml.EPS, location);
return true;
}
}
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/distort/NarrowToWidePtoP_F64.java b/main/boofcv-geo/src/main/java/boofcv/alg/distort/NarrowToWidePtoP_F64.java
index b1165a3a46..d2c818472f 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/distort/NarrowToWidePtoP_F64.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/distort/NarrowToWidePtoP_F64.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -76,7 +76,7 @@ public void setRotationWideToNarrow( DMatrixRMaj R ) {
public void compute( double x, double y, Point2D_F64 out ) {
narrowToNorm.compute(x, y, norm);
- // Convert from 2D homogenous to 3D
+ // Convert from 2D homogeneous to 3D
unit.setTo(norm.x, norm.y, 1.0);
// Rotate then make it a unit vector
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/DecomposeEssential.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/DecomposeEssential.java
index eccef49c54..c0507bc265 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/DecomposeEssential.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/DecomposeEssential.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -66,7 +66,7 @@ public class DecomposeEssential {
DMatrixRMaj W = new DMatrixRMaj(3, 3);
/**
- * Essential matrix can be viewed as a homogenous quantity (scale invariant) or not. If Viewed as the former then
+ * Essential matrix can be viewed as a homogeneous quantity (scale invariant) or not. If Viewed as the former then
* this is the length of the translation vector
*/
@Getter double translationLength;
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/MultiViewOps.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/MultiViewOps.java
index 58300ffa8f..cdb98559a5 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/MultiViewOps.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/MultiViewOps.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -849,7 +849,7 @@ public static void extractEpipoles( DMatrixRMaj F, Point3D_F64 e1, Point3D_F64 e
/**
*
* Given a fundamental matrix a pair of camera matrices P and P1' are extracted. The camera matrices
- * are 3 by 4 and used to project a 3D homogenous point onto the image plane. These camera matrices will only
+ * are 3 by 4 and used to project a 3D homogeneous point onto the image plane. These camera matrices will only
* be known up to a projective transform, thus there are multiple solutions, The canonical camera
* matrix is defined as:
*
@@ -1249,7 +1249,7 @@ public static void errorsHomographySymm( List observations,
* @param x1 (Input) point (pixel) in first view
* @param l2 (Input) line in second view
* @param T (Input) Trifocal tensor
- * @param x3 (Output) Induced point (pixel) in third view. Homogenous coordinates.
+ * @param x3 (Output) Induced point (pixel) in third view. Homogeneous coordinates.
* @return induced point.
*/
public static Point3D_F64 transfer_1_to_3( TrifocalTensor T, Point2D_F64 x1, Vector3D_F64 l2,
@@ -1296,7 +1296,7 @@ public static Point3D_F64 transfer_1_to_3( TrifocalTensor T, Point2D_F64 x1, Vec
* @param x1 (Input) point (pixel) in first view
* @param x2 (Input) point (pixel) in second view
* @param T (Input) Trifocal tensor
- * @param x3 (Output) Induced point (pixel) in third view. Homogenous coordinates.
+ * @param x3 (Output) Induced point (pixel) in third view. Homogeneous coordinates.
* @return induced point.
*/
public static Point3D_F64 transfer_1_to_3( TrifocalTensor T, Point2D_F64 x1, Point2D_F64 x2,
@@ -1318,7 +1318,7 @@ public static Point3D_F64 transfer_1_to_3( TrifocalTensor T, Point2D_F64 x1, Poi
* @param x1 (Input) point (pixel) in first view
* @param l3 (Input) line in third view
* @param T (Input) Trifocal tensor
- * @param x2 (Output) Induced point (pixel) in second view. Homogenous coordinates.
+ * @param x2 (Output) Induced point (pixel) in second view. Homogeneous coordinates.
* @return induced point.
*/
public static Point3D_F64 transfer_1_to_2( TrifocalTensor T, Point2D_F64 x1, Vector3D_F64 l3,
@@ -1349,7 +1349,7 @@ public static Point3D_F64 transfer_1_to_2( TrifocalTensor T, Point2D_F64 x1, Vec
* @param x1 (Input) point (pixel) in first view
* @param x3 (Input) point (pixel) in third view
* @param T (Input) Trifocal tensor
- * @param x2 (Output) Induced point (pixel) in second view. Homogenous coordinates.
+ * @param x2 (Output) Induced point (pixel) in second view. Homogeneous coordinates.
* @return induced point.
*/
public static Point3D_F64 transfer_1_to_2( TrifocalTensor T, Point2D_F64 x1, Point2D_F64 x3,
@@ -1716,7 +1716,7 @@ public static void triangulatePoints( SceneStructureMetric structure, SceneObser
var normObs = new DogArray<>(Point2D_F64::new);
normObs.resize(3);
- final boolean homogenous = structure.isHomogenous();
+ final boolean homogeneous = structure.isHomogeneous();
var X = new Point4D_F64();
var worldToViews = new ArrayList();
@@ -1741,7 +1741,7 @@ public static void triangulatePoints( SceneStructureMetric structure, SceneObser
// this should work unless the input is bad
throw new RuntimeException("Triangulation failed. Bad input?");
}
- if (homogenous)
+ if (homogeneous)
sp.set(X.x, X.y, X.z, X.w);
else
sp.set(X.x/X.w, X.y/X.w, X.z/X.w);
@@ -1929,7 +1929,7 @@ public static void scenePointsToPixels( SceneStructureMetric scene, int viewIdx,
double x = point.coordinate[0];
double y = point.coordinate[1];
double z = point.coordinate[2];
- double w = scene.isHomogenous() ? point.coordinate[3] : 1.0;
+ double w = scene.isHomogeneous() ? point.coordinate[3] : 1.0;
// Project the pixel while being careful for points at infinity
SePointOps_F64.transformV(world_to_view, x, y, z, w, camPoint);
@@ -1940,10 +1940,10 @@ public static void scenePointsToPixels( SceneStructureMetric scene, int viewIdx,
/**
* Converts the points in the scene into a 3D point cloud. A lambda is used pass in the results. This function
- * will work if it's homogenous or 3D coordinates.
+ * will work if it's homogeneous or 3D coordinates.
*
* @param scene (Input) The scene
- * @param tol (Input) Only used if the scene is in homogenous coordinates.
+ * @param tol (Input) Only used if the scene is in homogeneous coordinates.
* Tolerance for points being at infinity. Smaller values means more tolerant. Try 1e-8.
* @param func (Output) Results are passed in to this function with their index and 3D point.
*/
@@ -1952,7 +1952,7 @@ public static void sceneToCloud3( SceneStructureMetric scene, double tol,
Point3D_F64 out = new Point3D_F64();
- final boolean homogenous = scene.isHomogenous();
+ final boolean homogeneous = scene.isHomogeneous();
for (int pointIdx = 0; pointIdx < scene.points.size; pointIdx++) {
SceneStructureCommon.Point point = scene.points.get(pointIdx);
@@ -1960,7 +1960,7 @@ public static void sceneToCloud3( SceneStructureMetric scene, double tol,
double y = point.coordinate[1];
double z = point.coordinate[2];
- if (homogenous) {
+ if (homogeneous) {
double r = Math.sqrt(x*x + y*y + z*z);
double w = point.coordinate[3];
@@ -1980,8 +1980,8 @@ public static void sceneToCloud3( SceneStructureMetric scene, double tol,
}
/**
- * Converts the points in the scene into a homogenous point cloud. Results are passed in to the lambda.
- * It will work with a scene in homogenous or 3D coordinates.
+ * Converts the points in the scene into a homogeneous point cloud. Results are passed in to the lambda.
+ * It will work with a scene in homogeneous or 3D coordinates.
*
* @param scene (Input) The scene
* @param func (Output) Results are passed in to this function with their index and 3D point.
@@ -1990,14 +1990,14 @@ public static void sceneToCloudH( SceneStructureMetric scene, BoofLambdas.Proces
Point4D_F64 out = new Point4D_F64();
- final boolean homogenous = scene.isHomogenous();
+ final boolean homogeneous = scene.isHomogeneous();
for (int pointIdx = 0; pointIdx < scene.points.size; pointIdx++) {
SceneStructureCommon.Point point = scene.points.get(pointIdx);
double x = point.coordinate[0];
double y = point.coordinate[1];
double z = point.coordinate[2];
- double w = homogenous ? point.coordinate[3] : 1.0;
+ double w = homogeneous ? point.coordinate[3] : 1.0;
out.setTo(x, y, z, w);
func.process(pointIdx, out);
}
@@ -2051,7 +2051,7 @@ public static boolean homographyToFundamental( DMatrixRMaj H21, Listdistance = norm( a/norm(a) - b/norm(b) )
*
@@ -1061,11 +1061,11 @@ public static double distance( Point4D_F64 a, Point4D_F64 b ) {
}
/**
- * Returns the Euclidean distance between a 3D point a point homogenous coordinates. If the homogenous point
+ * Returns the Euclidean distance between a 3D point a point homogeneous coordinates. If the homogeneous point
* is at infinity, within tolererance, then {@link Double#POSITIVE_INFINITY} is returned.
*
* @param a (Input) 3D point
- * @param b (Input) Homogenous point
+ * @param b (Input) Homogeneous point
* @param tol (Input) Tolerance for point being at infinity. Closer to zero means more strict. Try 1e-8
* @return Euclidean distance
*/
@@ -1074,7 +1074,7 @@ public static double distance3DvsH( Point3D_F64 a, Point4D_F64 b, double tol ) {
}
/**
- * Checks to see if a point in homogenous coordinates is behind the camera, including z=0.
+ *
Checks to see if a point in homogeneous coordinates is behind the camera, including z=0.
* This is made more complex as the possibility that it's at infinity needs to be explicitly checked
* and handled.
*
@@ -1124,7 +1124,7 @@ public static DMatrixRMaj invertCalibrationMatrix( DMatrixRMaj K, @Nullable DMat
}
/**
- * Applies a rotation to a homogenous 3D point
+ * Applies a rotation to a homogeneous 3D point
*
* @param R rotation matrix.
* @param src (Input) point
@@ -1142,7 +1142,7 @@ public static void rotateH( DMatrixRMaj R, Point4D_F64 src, Point4D_F64 dst ) {
}
/**
- * Applies a rotation in reverse to a homogenous 3D point
+ * Applies a rotation in reverse to a homogeneous 3D point
*
* @param R rotation matrix.
* @param src (Input) point
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/PositiveDepthConstraintCheckH.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/PositiveDepthConstraintCheckH.java
index 8cc27736f1..991093bbf2 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/PositiveDepthConstraintCheckH.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/PositiveDepthConstraintCheckH.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -35,7 +35,7 @@
* if you use this class.
*
*
- * Triangulation is done in homogenous coordinates so that points at infinity can be handled
+ * Triangulation is done in homogeneous coordinates so that points at infinity can be handled
*
*
* COORDINATE SYSTEM: Right handed coordinate system with +z is pointing along the camera's optical axis,
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/PositiveDepthConstraintCheckHPointing.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/PositiveDepthConstraintCheckHPointing.java
index afe78a2957..9a569f321c 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/PositiveDepthConstraintCheckHPointing.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/PositiveDepthConstraintCheckHPointing.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -29,7 +29,7 @@
/**
*
Checks positive depth constraint given observations as pointing vectors.
*
- * Triangulation is done in homogenous coordinates so that points at infinity can be handled
+ * Triangulation is done in homogeneous coordinates so that points at infinity can be handled
*
* COORDINATE SYSTEM: Right handed coordinate system with +z is pointing along the camera's optical axis
*
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/WorldToCameraToPixel.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/WorldToCameraToPixel.java
index 19c7459a75..51add901d3 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/WorldToCameraToPixel.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/WorldToCameraToPixel.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -115,7 +115,7 @@ public boolean transform( Point3D_F64 worldPt, Point2D_F64 pixelPt, Point2D_F64
* Computes the observed location of the specified point in world coordinates in the camera pixel. If
* the object can't be viewed because it is behind the camera then false is returned.
*
- * @param worldPt Location of point in world frame. Homogenous coordinates.
+ * @param worldPt Location of point in world frame. Homogeneous coordinates.
* @param pixelPt Pixel observation of point.
* @return True if visible (+z) or false if not visible (-z)
*/
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentMetricResidualFunction.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentMetricResidualFunction.java
index c898cc0c86..d94eca6611 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentMetricResidualFunction.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentMetricResidualFunction.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -79,7 +79,7 @@ public class BundleAdjustmentMetricResidualFunction
// Look up workspace by view ID when relative view
private final Map mapWorldToView = new HashMap<>();
- // Storage for 3D points in Cartesian and homogenous coordinates
+ // Storage for 3D points in Cartesian and homogeneous coordinates
private final Point3D_F64 p3 = new Point3D_F64();
private final Point4D_F64 p4 = new Point4D_F64();
@@ -125,7 +125,7 @@ public void process( double[] input, double[] output ) {
codec.decode(input, structure);
// Project the general scene now
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
project4(output);
else
project3(output);
@@ -136,7 +136,7 @@ public void process( double[] input, double[] output ) {
* compute the residuals and not optimizing
*/
public void process( double[] output ) {
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
project4(output);
else
project3(output);
@@ -211,7 +211,7 @@ private void project3( double[] output ) {
}
/**
- * projection from homogenous coordinates
+ * projection from homogeneous coordinates
*/
private void project4( double[] output ) {
int observationIndex = 0;
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentMetricSchurJacobian.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentMetricSchurJacobian.java
index 03f431e323..1b40142d51 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentMetricSchurJacobian.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentMetricSchurJacobian.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -62,7 +62,7 @@ public abstract class BundleAdjustmentMetricSchurJacobian
// total number of parameters being optimized
private int numParameters;
- // length of a 3D point. 3 = regular, 4 = homogenous
+ // length of a 3D point. 3 = regular, 4 = homogeneous
private int lengthPoint;
/** Specifies method to parameterize rotations, i.e. Rodrigues to SO3 */
@@ -129,7 +129,7 @@ public void configure( SceneStructureMetric structure, SceneObservations observa
this.structure = structure;
this.observations = observations;
- if (!structure.isHomogenous()) {
+ if (!structure.isHomogeneous()) {
lengthPoint = 3;
} else {
lengthPoint = 4;
@@ -261,7 +261,7 @@ private int computeGeneralPoints( DMatrix leftPoint, DMatrix rightView,
int featureIndex = obsView.point.get(i);
int columnOfPointInJac = featureIndex*lengthPoint;
- if (structure.isHomogenous()) {
+ if (structure.isHomogeneous()) {
worldPt4.x = input[columnOfPointInJac];
worldPt4.y = input[columnOfPointInJac + 1];
worldPt4.z = input[columnOfPointInJac + 2];
@@ -295,7 +295,7 @@ private int computeGeneralPoints( DMatrix leftPoint, DMatrix rightView,
false, null, null);
}
//============ Partial of worldPt
- if (structure.isHomogenous()) {
+ if (structure.isHomogeneous()) {
partialPointH(leftPoint, rightView, strView, columnOfPointInJac);
} else {
partialPoint3(leftPoint, rightView, strView, columnOfPointInJac);
@@ -387,7 +387,7 @@ private int computeRigidPoints( DMatrix leftPoint, DMatrix rightView,
SceneStructureMetric.Rigid rigid = structure.rigids.get(rigidIndex);
int pointIndex = featureIndex - rigid.indexFirst; // index of point in rigid body
- if (structure.isHomogenous()) {
+ if (structure.isHomogeneous()) {
rigid.getPoint(pointIndex, rigidPt4);
SePointOps_F64.transform(rigid.object_to_world, rigidPt4, worldPt4);
SePointOps_F64.transformV(world_to_view, worldPt4, cameraPt);
@@ -417,7 +417,7 @@ private int computeRigidPoints( DMatrix leftPoint, DMatrix rightView,
}
//============ Partial of world to view
- if (structure.isHomogenous()) {
+ if (structure.isHomogeneous()) {
partialViewSE3(rightView, view, worldPt4.x, worldPt4.y, worldPt4.z, worldPt4.w);
} else {
partialViewSE3(rightView, view, worldPt3.x, worldPt3.y, worldPt3.z, 1);
@@ -430,7 +430,7 @@ private int computeRigidPoints( DMatrix leftPoint, DMatrix rightView,
// partial R1 is R2*(@R1*X)
// partial T1 is R2*(@T1)
if (!rigid.known) {
- if (structure.isHomogenous()) {
+ if (structure.isHomogeneous()) {
partialRigidSE3(leftPoint, rigidIndex, rigidPt4.x, rigidPt4.y, rigidPt4.z, rigidPt4.w);
} else {
partialRigidSE3(leftPoint, rigidIndex, rigidPt3.x, rigidPt3.y, rigidPt3.z, 1);
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentProjectiveResidualFunction.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentProjectiveResidualFunction.java
index c4198d0f42..2e9bb2016a 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentProjectiveResidualFunction.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentProjectiveResidualFunction.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -65,7 +65,7 @@ public class BundleAdjustmentProjectiveResidualFunction
private final Point3D_F64 p3 = new Point3D_F64();
private final Point4D_F64 p4 = new Point4D_F64();
- // Pixel in homogenous image coordinate
+ // Pixel in homogeneous image coordinate
private final Point3D_F64 pix = new Point3D_F64();
/**
@@ -97,7 +97,7 @@ public void process( double[] input, double[] output ) {
// write the current parameters into the scene's structure
codec.decode(input, structure);
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
project4(output);
else
project3(output);
@@ -121,7 +121,7 @@ private void project3( double[] output ) {
// Apply projective camera to point in world coordinates
PerspectiveOps.renderPixel(view.worldToView, p3, pix);
- // Apply camera model to pixel in homogenous coordinates
+ // Apply camera model to pixel in homogeneous coordinates
camera.model.project(pix.x, pix.y, pix.z, predictedPixel);
// Save results
@@ -134,7 +134,7 @@ private void project3( double[] output ) {
}
/**
- * projection from homogenous coordinates
+ * projection from homogeneous coordinates
*/
private void project4( double[] output ) {
int observationIndex = 0;
@@ -151,7 +151,7 @@ private void project4( double[] output ) {
// Apply projective camera to point in world coordinates
PerspectiveOps.renderPixel(view.worldToView, p4, pix);
- // Apply camera model to pixel in homogenous coordinates
+ // Apply camera model to pixel in homogeneous coordinates
camera.model.project(pix.x, pix.y, pix.z, predictedPixel);
// Save results
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentProjectiveSchurJacobian.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentProjectiveSchurJacobian.java
index 9b48c99291..bcc26f9539 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentProjectiveSchurJacobian.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/BundleAdjustmentProjectiveSchurJacobian.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -50,13 +50,13 @@ public abstract class BundleAdjustmentProjectiveSchurJacobian
// total number of parameters being optimized
private int numParameters;
- // length of a 3D point. 3 = regular, 4 = homogenous
+ // length of a 3D point. 3 = regular, 4 = homogeneous
private int lengthPoint;
// feature location in world coordinates
private final Point4D_F64 worldPt = new Point4D_F64();
- // Observed pixel in homogenous coordinates. X'=P*X
+ // Observed pixel in homogeneous coordinates. X'=P*X
private final Point3D_F64 pixelH = new Point3D_F64();
// index in parameters of the first point
@@ -89,7 +89,7 @@ public void configure( SceneStructureProjective structure, SceneObservations obs
this.structure = structure;
this.observations = observations;
- if (!structure.isHomogenous()) {
+ if (!structure.isHomogeneous()) {
worldPt.w = 1;
lengthPoint = 3;
} else {
@@ -179,7 +179,7 @@ public void processInternal( double[] input, DMatrix leftPoint, DMatrix rightVie
worldPt.x = input[columnOfPointInJac];
worldPt.y = input[columnOfPointInJac + 1];
worldPt.z = input[columnOfPointInJac + 2];
- if (structure.isHomogenous()) {
+ if (structure.isHomogeneous()) {
worldPt.w = input[columnOfPointInJac + 3];
}
@@ -187,14 +187,14 @@ public void processInternal( double[] input, DMatrix leftPoint, DMatrix rightVie
PerspectiveOps.renderPixel(worldToView, worldPt, pixelH);
if (view.known) {
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
partialCameraMatrixH(worldPt.x, worldPt.y, worldPt.z, worldPt.w,
worldToView, worldGradX, worldGradY, worldGradZ, null, null, null);
else
partialCameraMatrix(worldPt.x, worldPt.y, worldPt.z,
worldToView, worldGradX, worldGradY, worldGradZ, null, null, null);
} else {
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
partialCameraMatrixH(worldPt.x, worldPt.y, worldPt.z, worldPt.w,
worldToView, worldGradX, worldGradY, worldGradZ, camGradX, camGradY, camGradZ);
else
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/CodecSceneStructureMetric.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/CodecSceneStructureMetric.java
index 00da1d57b6..2f8bb684e2 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/CodecSceneStructureMetric.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/CodecSceneStructureMetric.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -60,7 +60,7 @@ public void decode( double[] input, SceneStructureMetric structure ) {
p.coordinate[0] = input[index++];
p.coordinate[1] = input[index++];
p.coordinate[2] = input[index++];
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
p.coordinate[3] = input[index++];
}
@@ -110,7 +110,7 @@ public void encode( SceneStructureMetric structure, double[] output ) {
output[index++] = p.coordinate[0];
output[index++] = p.coordinate[1];
output[index++] = p.coordinate[2];
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
output[index++] = p.coordinate[3];
// Make sure nothing blew up
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/CodecSceneStructureProjective.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/CodecSceneStructureProjective.java
index 5ddb7fdd29..50ec909b4f 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/CodecSceneStructureProjective.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/bundle/CodecSceneStructureProjective.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2020, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -42,7 +42,7 @@ public void decode( double[] input, SceneStructureProjective structure ) {
p.coordinate[0] = input[index++];
p.coordinate[1] = input[index++];
p.coordinate[2] = input[index++];
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
p.coordinate[3] = input[index++];
}
@@ -74,7 +74,7 @@ public void encode( SceneStructureProjective structure, double[] output ) {
output[index++] = p.coordinate[0];
output[index++] = p.coordinate[1];
output[index++] = p.coordinate[2];
- if (structure.isHomogenous())
+ if (structure.isHomogeneous())
output[index++] = p.coordinate[3];
}
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/f/FundamentalToProjective.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/f/FundamentalToProjective.java
index 1912c3f751..655950f14e 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/f/FundamentalToProjective.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/f/FundamentalToProjective.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -77,7 +77,7 @@ public void twoView( DMatrixRMaj F, DMatrixRMaj cameraMatrix ) {
/**
*
* Given a fundamental matrix a pair of camera matrices P and P1' are extracted. The camera matrices
- * are 3 by 4 and used to project a 3D homogenous point onto the image plane. These camera matrices will only
+ * are 3 by 4 and used to project a 3D homogeneous point onto the image plane. These camera matrices will only
* be known up to a projective transform, thus there are multiple solutions, The canonical camera
* matrix is defined as:
*
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/h/HomographyDirectLinearTransform.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/h/HomographyDirectLinearTransform.java
index 6a42756475..c3dac637b1 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/h/HomographyDirectLinearTransform.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/h/HomographyDirectLinearTransform.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -150,7 +150,7 @@ public boolean process( @Nullable List points2D,
int numRows = computeTotalRows(num2D, num3D, numConic);
// only 2D points need to be normalzied because of the implicit z=1
- // 3D points are homogenous or lines and the vector can be normalized to 1
+ // 3D points are homogeneous or lines and the vector can be normalized to 1
// same goes for the conic equation
shouldNormalize = false;//normalize && points2D != null;
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/impl/ImplPerspectiveOps_F64.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/impl/ImplPerspectiveOps_F64.java
index aa3fb16ec3..de96149a0f 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/impl/ImplPerspectiveOps_F64.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/impl/ImplPerspectiveOps_F64.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -325,14 +325,14 @@ public static void renderPixel( DMatrixRMaj cameraMatrix, Point4D_F64 X, Point2D
}
public static double distance3DvsH( Point3D_F64 a, Point4D_F64 b, double tol ) {
- // convert the homogenous point into a 3D point.
+ // convert the homogeneous point into a 3D point.
double x = b.x;
double y = b.y;
double z = b.z;
double r = Math.sqrt(x*x + y*y + z*z);
- // See if the homogenous point is at infinity, within tolerance
+ // See if the homogeneous point is at infinity, within tolerance
if (r*tol > Math.abs(b.w)) {
return Double.POSITIVE_INFINITY;
}
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/pose/PRnPDirectLinearTransform.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/pose/PRnPDirectLinearTransform.java
index 53cc5bd84e..29f23d0c06 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/pose/PRnPDirectLinearTransform.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/pose/PRnPDirectLinearTransform.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -31,7 +31,7 @@
/**
* Estimates a projective camera given N points, i.e. Projective N Point (PRnP). This is the projective equivalent
* of the perspective N Point (PnP) problem. Each point consists of a 2D pixel observations and 3D
- * homogenous coordinate. Pixels are normalized to have zero means and standard deviation of 1. 3D points are
+ * homogeneous coordinate. Pixels are normalized to have zero means and standard deviation of 1. 3D points are
* scaled to have a f-norm of 1. See [1] for details. Each point provides 2 linearly independent equations, requiring
* a minimum of 6 points. More points are allowed.
*
@@ -49,7 +49,7 @@ public class PRnPDirectLinearTransform {
public SolveNullSpace solverNullspace = new SolveNullSpaceSvd_DDRM();
private DMatrixRMaj ns = new DMatrixRMaj(12, 1);
- // if true it will normalize input 3D homogenous to have f-norm of 1
+ // if true it will normalize input 3D homogeneous to have f-norm of 1
private boolean normalize3D = true;
private DMatrixRMaj A = new DMatrixRMaj(12, 12);
@@ -57,7 +57,7 @@ public class PRnPDirectLinearTransform {
/**
* Computes projective camera matrix.
*
- * @param worldPts points in homogenous 3D coordinates in world frame. Might be modified.
+ * @param worldPts points in homogeneous 3D coordinates in world frame. Might be modified.
* @param observed pixel coordinates of points. not modified
* @param solutionModel (Output) 3x4 camera matrix
* @return true if succesfull
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/pose/PoseFromPairLinear6.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/pose/PoseFromPairLinear6.java
index 941a8cde4b..41a43a6de1 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/pose/PoseFromPairLinear6.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/pose/PoseFromPairLinear6.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -99,16 +99,16 @@ public boolean process( List observations, List loc
* must be known. Feature locations are in calibrated image coordinates.
*
* @param observations List of pixel or normalized image coordinate observations
- * @param locations List of object locations in homogenous coordinates. One for each observation pair.
+ * @param locations List of object locations in homogeneous coordinates. One for each observation pair.
*/
- public boolean processHomogenous( List observations, List locations ) {
+ public boolean processHomogeneous( List observations, List locations ) {
if (observations.size() != locations.size())
throw new IllegalArgumentException("Number of observations and locations must match.");
if (observations.size() < 6)
throw new IllegalArgumentException("At least (if not more than) six points are required.");
- setupHomogenousA(observations, locations);
+ setupHomogeneousA(observations, locations);
if (!solveNullspace.process(A, 1, P))
return false;
@@ -174,7 +174,7 @@ private void setupA( List observations, List locati
}
}
- private void setupHomogenousA( List observations, List locations ) {
+ private void setupHomogeneousA( List observations, List locations ) {
A.reshape(2*observations.size(), 12, false);
for (int i = 0; i < observations.size(); i++) {
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/rectify/DisparityParameters.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/rectify/DisparityParameters.java
index 452ab5a766..4ce9b0ae66 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/rectify/DisparityParameters.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/rectify/DisparityParameters.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -88,13 +88,13 @@ public boolean pixelToLeft3D( double pixelX, double pixelY, double value, Point3
}
/**
- * Give a pixel coordinate and raw disparity value, compute its homogenous location. This can handle
+ * Give a pixel coordinate and raw disparity value, compute its homogeneous location. This can handle
* points at infinity.
*
* @param pixelX Pixel coordinate x-axis
* @param pixelY Pixel coordinate y-axis
* @param value Raw disparity value. DO NOT ADD MIN.
- * @param location (Output) Computed homogenous coordinate
+ * @param location (Output) Computed homogeneous coordinate
* @return true if successful
*/
public boolean pixelToLeft4D( double pixelX, double pixelY, double value, Point4D_F64 location ) {
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/robust/DistanceSe3SymmetricSq.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/robust/DistanceSe3SymmetricSq.java
index 37d8ccba4f..582f85aa5c 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/robust/DistanceSe3SymmetricSq.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/robust/DistanceSe3SymmetricSq.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -33,7 +33,7 @@
/**
*
* Computes the error for a given camera motion from two calibrated views. First a point
- * is triangulated in homogenous coordinates from the two views and the motion. Then the difference between
+ * is triangulated in homogeneous coordinates from the two views and the motion. Then the difference between
* the observed and projected point is found at each view. Error is normalized pixel difference
* squared.
*
@@ -42,7 +42,7 @@
* Δx22 + Δy22
*
*
- * Homogenous coordinates are used so that pure/nearly pure rotation can be handled. Points will be at infinity.
+ * Homogeneous coordinates are used so that pure/nearly pure rotation can be handled. Points will be at infinity.
*
*
* Error units can be in either pixels2 or unit less (normalized pixel coordinates). To compute
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/robust/DistanceTrifocalTransferSq.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/robust/DistanceTrifocalTransferSq.java
index 27803e7e76..0cc83bab0f 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/robust/DistanceTrifocalTransferSq.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/robust/DistanceTrifocalTransferSq.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2020, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -35,7 +35,7 @@
public class DistanceTrifocalTransferSq implements DistanceFromModel {
TrifocalTransfer transfer = new TrifocalTransfer();
- // transferred point in homogenous coordinates
+ // transferred point in homogeneous coordinates
Point3D_F64 c = new Point3D_F64();
@Override
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/structure/ProjectiveStructureByFactorization.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/structure/ProjectiveStructureByFactorization.java
index 6673841dc0..7a9166ab7a 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/structure/ProjectiveStructureByFactorization.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/structure/ProjectiveStructureByFactorization.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -42,7 +42,7 @@
* [ ... ] = [ ... ]
* [ λ[N,1]*x[1,1] , λ[N,2]*x[1,2] , ... , λ[N,M]*x[N,M] ] = [ P[M] ]
*
- * where λ is the depth, x is homogenous pixel coordinate, P is 3x4 projective, X is 3D feature location in
+ * where λ is the depth, x is homogeneous pixel coordinate, P is 3x4 projective, X is 3D feature location in
* world coordinate system.
*
* Procedure:
@@ -232,7 +232,7 @@ public void getCameraMatrix( int view, DMatrixRMaj cameraMatrix ) {
* Returns location of 3D feature for a view
*
* @param feature Index of feature to retrieve
- * @param out (Output) Storage for 3D feature. homogenous coordinates
+ * @param out (Output) Storage for 3D feature. homogeneous coordinates
*/
public void getFeature3D( int feature, Point4D_F64 out ) {
out.x = X.get(0, feature);
@@ -252,7 +252,7 @@ public void assignValuesToA( DMatrixRMaj A ) {
for (int pointIdx = 0; pointIdx < depths.numCols; pointIdx++) {
double depth = depths.get(viewIdx, pointIdx);
- // pixels are in homogenous coordinates A(:,i) = depth*(x,y,1)
+ // pixels are in homogeneous coordinates A(:,i) = depth*(x,y,1)
A.set(rowA, pointIdx, depth*pixels.get(rowPixels, pointIdx)/pixelScale);
A.set(rowA + 1, pointIdx, depth*pixels.get(rowPixels + 1, pointIdx)/pixelScale);
A.set(rowA + 2, pointIdx, depth);
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/structure/ProjectiveStructureFromHomographies.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/structure/ProjectiveStructureFromHomographies.java
index 9463e88467..d8c4a16fa6 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/structure/ProjectiveStructureFromHomographies.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/structure/ProjectiveStructureFromHomographies.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -228,7 +228,7 @@ void filterPointsOnPlaneAtInfinity( List homographies_view1_to_view
throw new IllegalArgumentException("Feature index outside of bounds. Must be from 0 to " + (totalFeatures - 1));
GeometryMath_F64.mult(H, p.p, tmp);
- // Homogenous coordinates are scale invariant. A scale
+ // Homogeneous coordinates are scale invariant. A scale
// needs to be picked for consistency. I picked the largest x or y value
double m = Math.max(Math.abs(tmp.x), Math.abs(tmp.y));
if (m == 0) m = 1;
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/ResidualsTriangulateProjective.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/ResidualsTriangulateProjective.java
index ca7f768fdc..a3a96b5f09 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/ResidualsTriangulateProjective.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/ResidualsTriangulateProjective.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -28,7 +28,7 @@
/**
* Residuals for a projective triangulation where the difference between predicted and observed pixels
- * are minimized. The optimized point is in homogenous coordinates.
+ * are minimized. The optimized point is in homogeneous coordinates.
*
* @author Peter Abeles
*/
@@ -40,7 +40,7 @@ public class ResidualsTriangulateProjective implements FunctionNtoM {
// Known camera motion
private List cameraMatrices;
- // 3D point in homogenous coordinates
+ // 3D point in homogeneous coordinates
private final Point4D_F64 point = new Point4D_F64();
private final Point2D_F64 predicted = new Point2D_F64();
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/Triangulate2ViewsGeometricMetric.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/Triangulate2ViewsGeometricMetric.java
index 20e39ef7ea..ad395b9be7 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/Triangulate2ViewsGeometricMetric.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/Triangulate2ViewsGeometricMetric.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -71,14 +71,14 @@ public boolean triangulate( Point2D_F64 a, Point2D_F64 b, Se3_F64 a_to_b, Point3
/**
*
- * Same as {@link #triangulate(Point2D_F64, Point2D_F64, Se3_F64, Point3D_F64)} but in homogenous coordinates
+ * Same as {@link #triangulate(Point2D_F64, Point2D_F64, Se3_F64, Point3D_F64)} but in homogeneous coordinates
* and can handle points at infinity.
*
*
* @param a Observation from camera view 'a' in normalized coordinates. Not modified.
* @param b Observation from camera view 'b' in normalized coordinates. Not modified.
* @param a_to_b Transformation from camera view 'a' to 'b' Not modified.
- * @param foundInA (Output) Found 3D position of the point in reference frame 'a'. Homogenous coordinates. Modified.
+ * @param foundInA (Output) Found 3D position of the point in reference frame 'a'. Homogeneous coordinates. Modified.
*/
public void triangulate( Point2D_F64 a, Point2D_F64 b, Se3_F64 a_to_b, Point4D_F64 foundInA ) {
// b_to_a = R'*(X_b-T)=X_a
@@ -101,13 +101,13 @@ public void triangulate( Point2D_F64 a, Point2D_F64 b, Se3_F64 a_to_b, Point4D_F
/**
*
* Triangulates two observations that are 3D pointing vectors and saves the results ad a 3D point in
- * homogenous coordinates.
+ * homogeneous coordinates.
*
*
* @param a Observation from camera view 'a' as a 3D pointing vector. Not modified.
* @param b Observation from camera view 'b' as a 3D pointing vector. Not modified.
* @param a_to_b Transformation from camera view 'a' to 'b' Not modified.
- * @param foundInA (Output) Found 3D position of the point in reference frame 'a'. Homogenous coordinates. Modified.
+ * @param foundInA (Output) Found 3D position of the point in reference frame 'a'. Homogeneous coordinates. Modified.
*/
public void triangulate( Point3D_F64 a, Point3D_F64 b, Se3_F64 a_to_b, Point4D_F64 foundInA ) {
// b_to_a = R'*(X_b-T)=X_a
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/TriangulateMetricLinearDLT.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/TriangulateMetricLinearDLT.java
index 10e17de316..841779eeb8 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/TriangulateMetricLinearDLT.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/TriangulateMetricLinearDLT.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -69,7 +69,7 @@ public class TriangulateMetricLinearDLT {
*
* @param observations Observation in each view in normalized coordinates. Not modified.
* @param worldToView Transformations from world to the view. Not modified.
- * @param found (Output) 3D point in homogenous coordinates in world reference frame. Modified.
+ * @param found (Output) 3D point in homogeneous coordinates in world reference frame. Modified.
*/
public GeometricResult triangulate( List observations,
List worldToView,
@@ -137,7 +137,7 @@ public GeometricResult triangulate( Point2D_F64 a, Point2D_F64 b,
*
* @param observations Observation in each view in 3d pointing vectors. Not modified.
* @param worldToView Transformations from world to the view. Not modified.
- * @param found (Output) 3D point in homogenous coordinates in world reference frame. Modified.
+ * @param found (Output) 3D point in homogeneous coordinates in world reference frame. Modified.
*/
public GeometricResult triangulateP( List observations,
List worldToView,
diff --git a/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/TriangulateProjectiveLinearDLT.java b/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/TriangulateProjectiveLinearDLT.java
index cea9127ff4..68693b6f40 100644
--- a/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/TriangulateProjectiveLinearDLT.java
+++ b/main/boofcv-geo/src/main/java/boofcv/alg/geo/triangulate/TriangulateProjectiveLinearDLT.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -67,7 +67,7 @@ public class TriangulateProjectiveLinearDLT {
*
* @param observations Observation in each view in pixel coordinates. Not modified.
* @param cameraMatrices Camera projection matrices, e.g. x = P*X. 3 by 4 projectives. Not modified.
- * @param found Output, found 3D point in homogenous coordinates. Modified.
+ * @param found Output, found 3D point in homogeneous coordinates. Modified.
* @return true if triangulation was successful or false if it failed
*/
public GeometricResult triangulate( List observations,
diff --git a/main/boofcv-geo/src/main/java/boofcv/factory/geo/FactoryMultiView.java b/main/boofcv-geo/src/main/java/boofcv/factory/geo/FactoryMultiView.java
index b6dd970ed3..511c98ccd6 100644
--- a/main/boofcv-geo/src/main/java/boofcv/factory/geo/FactoryMultiView.java
+++ b/main/boofcv-geo/src/main/java/boofcv/factory/geo/FactoryMultiView.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -607,7 +607,7 @@ public static TriangulateNViewsMetric triangulateNViewMetric( @Nullable ConfigTr
}
/**
- * Triangulate a homogenous point from N metric views given observations in normalized image coordinates.
+ * Triangulate a homogeneous point from N metric views given observations in normalized image coordinates.
*
* @return N-view triangulation algorithm
* @see TriangulateMetricLinearDLT
@@ -630,7 +630,7 @@ public static TriangulateNViewsMetricH triangulateNViewMetricH( @Nullable Config
}
/**
- * Triangulate a homogenous point from N projective views given observations in pixel coordinates.
+ * Triangulate a homogeneous point from N projective views given observations in pixel coordinates.
*
* @return N-view triangulation algorithm
* @see TriangulateProjectiveLinearDLT
@@ -671,7 +671,7 @@ public static Triangulate2PointingMetricH triangulate2PointingMetricH( @Nullable
}
/**
- * Triangulate a point in homogenous coordinates from N views given observations as pointing vectors.
+ * Triangulate a point in homogeneous coordinates from N views given observations as pointing vectors.
*
* @return N-view triangulation algorithm
* @see TriangulateMetricLinearDLT
diff --git a/main/boofcv-geo/src/main/java/boofcv/struct/geo/AssociatedPair3D.java b/main/boofcv-geo/src/main/java/boofcv/struct/geo/AssociatedPair3D.java
index 028866a3e4..d52c6ee0e2 100644
--- a/main/boofcv-geo/src/main/java/boofcv/struct/geo/AssociatedPair3D.java
+++ b/main/boofcv-geo/src/main/java/boofcv/struct/geo/AssociatedPair3D.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -23,7 +23,7 @@
/**
*
- * The observed location of a feature in two camera views. Typically a point in homogenous coordinates a line.
+ * The observed location of a feature in two camera views. Typically a point in homogeneous coordinates a line.
*
*
* @author Peter Abeles
diff --git a/main/boofcv-geo/src/main/java/boofcv/struct/geo/Point2D4D.java b/main/boofcv-geo/src/main/java/boofcv/struct/geo/Point2D4D.java
index e3fe8bda32..427e46ba9d 100644
--- a/main/boofcv-geo/src/main/java/boofcv/struct/geo/Point2D4D.java
+++ b/main/boofcv-geo/src/main/java/boofcv/struct/geo/Point2D4D.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -24,7 +24,7 @@
import lombok.Setter;
/**
- * Observed point feature location on the image plane and its 3D homogenous position.
+ * Observed point feature location on the image plane and its 3D homogeneous position.
*
* @author Peter Abeles
*/
@@ -34,7 +34,7 @@ public class Point2D4D {
*/
@Getter @Setter public Point2D_F64 observation;
/**
- * 3D location of the feature in homogenous world coordinates
+ * 3D location of the feature in homogeneous world coordinates
*/
@Getter @Setter public Point4D_F64 location;
diff --git a/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/GenericBundleAdjustmentMetricChecks.java b/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/GenericBundleAdjustmentMetricChecks.java
index 45995ea61d..17d3c90b79 100644
--- a/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/GenericBundleAdjustmentMetricChecks.java
+++ b/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/GenericBundleAdjustmentMetricChecks.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -180,7 +180,7 @@ public static void checkReprojectionError( SceneStructureMetric structure, Scene
PointIndex2D_F64 o = new PointIndex2D_F64();
Point2D_F64 predicted = new Point2D_F64();
- if (structure.homogenous) {
+ if (structure.homogeneous) {
Point4D_F64 p4 = new Point4D_F64();
Point3D_F64 p3 = new Point3D_F64();
for (int viewIndex = 0; viewIndex < observations.views.size; viewIndex++) {
@@ -222,9 +222,9 @@ public static void checkReprojectionError( SceneStructureMetric structure, Scene
public static void assertEquals( SceneStructureMetric a, SceneStructureMetric b,
double tolCamera, double tolDistance, double tolRotation ) {
- Assertions.assertEquals(a.homogenous, b.homogenous);
+ Assertions.assertEquals(a.homogeneous, b.homogeneous);
- if (a.homogenous) {
+ if (a.homogeneous) {
// Point4D_F64 pa = new Point4D_F64();
// Point4D_F64 pb = new Point4D_F64();
diff --git a/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/GenericBundleAdjustmentProjectiveChecks.java b/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/GenericBundleAdjustmentProjectiveChecks.java
index bb9211cc34..73f22c24be 100644
--- a/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/GenericBundleAdjustmentProjectiveChecks.java
+++ b/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/GenericBundleAdjustmentProjectiveChecks.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -154,7 +154,7 @@ static void checkReprojectionError( SceneStructureProjective structure, SceneObs
PointIndex2D_F64 o = new PointIndex2D_F64();
Point2D_F64 predicted = new Point2D_F64();
- if (structure.homogenous) {
+ if (structure.homogeneous) {
Point4D_F64 p4 = new Point4D_F64();
Point3D_F64 p3 = new Point3D_F64();
for (int indexView = 0; indexView < observations.views.size; indexView++) {
@@ -192,9 +192,9 @@ static void checkReprojectionError( SceneStructureProjective structure, SceneObs
static void assertEquals( SceneStructureProjective a, SceneStructureProjective b,
double tolDistance ) {
- Assertions.assertEquals(a.homogenous, b.homogenous);
+ Assertions.assertEquals(a.homogeneous, b.homogeneous);
- if (a.homogenous) {
+ if (a.homogeneous) {
// Point4D_F64 pa = new Point4D_F64();
// Point4D_F64 pb = new Point4D_F64();
diff --git a/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/TestScaleSceneStructure.java b/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/TestScaleSceneStructure.java
index 2e4d5278db..3ed101c155 100644
--- a/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/TestScaleSceneStructure.java
+++ b/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/TestScaleSceneStructure.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -53,15 +53,15 @@ class TestScaleSceneStructure extends BoofStandardJUnit {
@Test void apply_undo_metric() {
for (int h = 0; h < 2; h++) {
- boolean homogenous = h == 1;
+ boolean homogeneous = h == 1;
var alg = new ScaleSceneStructure();
alg.medianPoint.setTo(0.5, 0.9, 1.3);
alg.medianDistancePoint = 1.2;
- var expected = new SceneStructureMetric(homogenous);
- var found = new SceneStructureMetric(homogenous);
+ var expected = new SceneStructureMetric(homogeneous);
+ var found = new SceneStructureMetric(homogeneous);
SceneObservations obs = createProjectiveScene(found, 0xBEEF);
createProjectiveScene(expected, 0xBEEF);
@@ -92,14 +92,14 @@ class TestScaleSceneStructure extends BoofStandardJUnit {
boolean pointsStats = p == 1;
for (int h = 0; h < 2; h++) {
- boolean homogenous = h == 1;
+ boolean homogeneous = h == 1;
var alg = new ScaleSceneStructure();
alg.setScalePixelsUsingStats(pointsStats);
alg.medianPoint.setTo(0.5, 0.9, 1.3);
alg.medianDistancePoint = 1.2;
- var expected = new SceneStructureProjective(homogenous);
- var found = new SceneStructureProjective(homogenous);
+ var expected = new SceneStructureProjective(homogeneous);
+ var found = new SceneStructureProjective(homogeneous);
SceneObservations obs = createProjectiveScene(found, 0xBEEF);
createProjectiveScene(expected, 0xBEEF);
@@ -110,7 +110,7 @@ class TestScaleSceneStructure extends BoofStandardJUnit {
alg.applyScale(found, obs);
// Make sure it was changed
- if (!homogenous) {
+ if (!homogeneous) {
// can't normalize camera matrix in this situation
for (int i = 0; i < expected.views.size; i++) {
double error = SpecializedOps_DDRM.diffNormF(expected.views.data[i].worldToView, found.views.data[i].worldToView);
@@ -134,7 +134,7 @@ class TestScaleSceneStructure extends BoofStandardJUnit {
* Very basic check to see if observations are scaled from -0.5 to 0.5
*/
@Test void applyScaleToPixelsAndCameraMatrix() {
- // homogenous or not doesn't matter
+ // homogeneous or not doesn't matter
var structure = new SceneStructureProjective(false);
SceneObservations obs = createProjectiveScene(structure, 0xBEEF);
@@ -188,7 +188,7 @@ public static SceneObservations createProjectiveScene( SceneStructureMetric scen
for (int i = 0; i < scene.points.size; i++) {
// Point in world frame
var X = new Point3D_F64(rand.nextGaussian(), rand.nextGaussian(), 3 + rand.nextGaussian());
- if (scene.homogenous) {
+ if (scene.homogeneous) {
scene.points.data[i].set(X.x, X.y, X.z, 1);
} else {
scene.points.data[i].set(X.x, X.y, X.z);
@@ -243,7 +243,7 @@ static SceneObservations createProjectiveScene( SceneStructureProjective scene,
for (int i = 0; i < scene.points.size; i++) {
// Point in world frame
var X = new Point3D_F64(rand.nextGaussian(), rand.nextGaussian(), 3 + rand.nextGaussian());
- if (scene.homogenous) {
+ if (scene.homogeneous) {
scene.points.data[i].set(X.x, X.y, X.z, 1);
} else {
scene.points.data[i].set(X.x, X.y, X.z);
diff --git a/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/TestSceneStructureCommon.java b/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/TestSceneStructureCommon.java
index 75eff092db..2c3608ac85 100644
--- a/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/TestSceneStructureCommon.java
+++ b/main/boofcv-geo/src/test/java/boofcv/abst/geo/bundle/TestSceneStructureCommon.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -32,7 +32,7 @@ class TestSceneStructureCommon extends BoofStandardJUnit {
@Test
void removePoints() {
var structure = new MockSceneStructureCommon(false);
- structure.homogenous = false;
+ structure.homogeneous = false;
structure.pointSize = 3;
var original = new ArrayList();
@@ -74,8 +74,8 @@ void Point_removeView() {
private static class MockSceneStructureCommon extends SceneStructureCommon {
- MockSceneStructureCommon( boolean homogenous ) {
- super(homogenous);
+ MockSceneStructureCommon( boolean homogeneous ) {
+ super(homogeneous);
}
@Override public int getParameterCount() {
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/TestMultiViewOps.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/TestMultiViewOps.java
index 6a207fc955..38511aedab 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/TestMultiViewOps.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/TestMultiViewOps.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -1376,8 +1376,8 @@ private void checkSplit3Lists( DogArray triples, List {
assertEquals(0.0, helper.cloud3.get(idx).distance(coor), UtilEjml.TEST_F64);
helper.counter++;
@@ -1387,8 +1387,8 @@ private void checkSplit3Lists( DogArray triples, List {
double distance = PerspectiveOps.distance3DvsH(helper.cloud3.get(idx), coor, 1e-8);
assertEquals(0.0, distance, UtilEjml.TEST_F64);
@@ -1485,7 +1485,7 @@ private class BundleSceneHelper {
List cloud3;
int counter;
- public BundleSceneHelper( boolean homogenous, int numPoints ) {
+ public BundleSceneHelper( boolean homogeneous, int numPoints ) {
world_to_view0 = SpecialEuclideanOps_F64.eulerXyz(0, 0.1, -0.2, 0.02, -0.04, 0.03, null);
world_to_view1 = SpecialEuclideanOps_F64.eulerXyz(0.3, 0.1, 0.2, 0.01, -0.06, 0.02, null);
@@ -1493,14 +1493,14 @@ public BundleSceneHelper( boolean homogenous, int numPoints ) {
cloud3 = UtilPoint3D_F64.random(new Point3D_F64(0, 0, 2),
-1, 1, -1, 1, -0.1, 0.1, numPoints, rand);
- scene = new SceneStructureMetric(homogenous);
+ scene = new SceneStructureMetric(homogeneous);
scene.initialize(1, 3, numPoints);
scene.setCamera(0, true, intrinsic);
scene.setView(0, 0, true, world_to_view0);
scene.setView(1, 0, true, world_to_view1);
for (int i = 0; i < cloud3.size(); i++) {
Point3D_F64 p = cloud3.get(i);
- if (homogenous) {
+ if (homogeneous) {
double w = rand.nextDouble() + 0.1;
scene.setPoint(i, p.x*w, p.y*w, p.z*w, w);
} else {
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/TestPerspectiveOps.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/TestPerspectiveOps.java
index 34c0799a81..fbbf960235 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/TestPerspectiveOps.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/TestPerspectiveOps.java
@@ -391,7 +391,7 @@ class TestPerspectiveOps extends BoofStandardJUnit {
assertEquals(expected.y, found.y, 1e-8);
}
- @Test void renderPixel_SE3_homogenous() {
+ @Test void renderPixel_SE3_homogeneous() {
var X3 = new Point3D_F64(0.1, -0.05, 3);
var X4 = new Point4D_F64(0.1, -0.05, 3, 1);
X4.scale(1.2);
@@ -719,19 +719,19 @@ DMatrix3x3 random3x3() {
assertEquals(expected, found, UtilEjml.TEST_F64_SQ);
}
- @Test void homogenousTo3dPositiveZ() {
+ @Test void homogeneousTo3dPositiveZ() {
Point3D_F64 found = new Point3D_F64();
- PerspectiveOps.homogenousTo3dPositiveZ(new Point4D_F64(4, 6, 8, 2), 1e8, 1e-8, found);
+ PerspectiveOps.homogeneousTo3dPositiveZ(new Point4D_F64(4, 6, 8, 2), 1e8, 1e-8, found);
assertEquals(0.0, found.distance(2, 3, 4), UtilEjml.TEST_F64);
// positive constraint is only enforced for points at infinity
- PerspectiveOps.homogenousTo3dPositiveZ(new Point4D_F64(4, 6, 8, -2), 1e8, 1e-8, found);
+ PerspectiveOps.homogeneousTo3dPositiveZ(new Point4D_F64(4, 6, 8, -2), 1e8, 1e-8, found);
assertEquals(0.0, found.distance(-2, -3, -4), UtilEjml.TEST_F64);
// point at infinity. chose to put it in front with positive z
double r = 1e8;
double d = Math.sqrt(4.0*4.0 + 6.0*6.0 + 8.0*8.0);
- PerspectiveOps.homogenousTo3dPositiveZ(new Point4D_F64(-4, -6, -8, 0), r, 1e-8, found);
+ PerspectiveOps.homogeneousTo3dPositiveZ(new Point4D_F64(-4, -6, -8, 0), r, 1e-8, found);
assertEquals(0.0, found.distance(4*r/d, 6*r/d, 8*r/d), UtilEjml.TEST_F64);
}
@@ -746,13 +746,13 @@ DMatrix3x3 random3x3() {
assertEquals(Double.POSITIVE_INFINITY, PerspectiveOps.distance3DvsH(a, b, 1e-8));
}
- @Test void isBehindCamera_homogenous() {
+ @Test void isBehindCamera_homogeneous() {
// Easy numerically
- isBehindCamera_homogenous(1.0);
+ isBehindCamera_homogeneous(1.0);
// Check for underflow and overflow issues
- isBehindCamera_homogenous(1e20);
- isBehindCamera_homogenous(1e-20);
+ isBehindCamera_homogeneous(1e20);
+ isBehindCamera_homogeneous(1e-20);
// Check an edge case
assertTrue(PerspectiveOps.isBehindCamera(new Point4D_F64(0, 0, 0, 0)));
@@ -766,7 +766,7 @@ DMatrix3x3 random3x3() {
checkBehindSwapSign(new Point4D_F64(0, 0, 1, Double.POSITIVE_INFINITY), false);
}
- void isBehindCamera_homogenous( double v ) {
+ void isBehindCamera_homogeneous( double v ) {
// Standard scenarios
checkBehindSwapSign(new Point4D_F64(0, 0, -v, v), true);
checkBehindSwapSign(new Point4D_F64(0, 0, v, v), false);
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/CommonBundleAdjustmentMetricSchurJacobian.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/CommonBundleAdjustmentMetricSchurJacobian.java
index 30ea90c886..a3be98d690 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/CommonBundleAdjustmentMetricSchurJacobian.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/CommonBundleAdjustmentMetricSchurJacobian.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -60,8 +60,8 @@ public abstract class CommonBundleAdjustmentMetricSchurJacobian alg,
- boolean homogenous, boolean hasRigid, boolean hasRelative ) {
- SceneStructureMetric structure = createScene(rand, homogenous, hasRigid, hasRelative);
+ boolean homogeneous, boolean hasRigid, boolean hasRelative ) {
+ SceneStructureMetric structure = createScene(rand, homogeneous, hasRigid, hasRelative);
SceneObservations observations = createObservations(rand, structure);
var param = new double[structure.getParameterCount()];
@@ -88,8 +88,8 @@ public void compareToNumerical( BundleAdjustmentMetricSchurJacobian alg,
compareToNumerical_relative(true);
}
- public void compareToNumerical_relative( boolean homogenous ) {
- SceneStructureMetric structure = createScene(rand, homogenous, false, true);
+ public void compareToNumerical_relative( boolean homogeneous ) {
+ SceneStructureMetric structure = createScene(rand, homogeneous, false, true);
SceneObservations observations = createObservations(rand, structure);
// Try different patterns of relative views and attempt to cover all the edge cases
@@ -132,8 +132,8 @@ public void compareToNumerical_relative( boolean[] knownChain,
twoViewsOneMotion(false, true);
}
- public void twoViewsOneMotion( boolean homogenous, boolean knownMotion ) {
- SceneStructureMetric structure = createSceneStereo(rand, homogenous);
+ public void twoViewsOneMotion( boolean homogeneous, boolean knownMotion ) {
+ SceneStructureMetric structure = createSceneStereo(rand, homogeneous);
SceneObservations observations = createObservations(rand, structure);
structure.motions.forIdx(( i, m ) -> m.known = knownMotion);
@@ -161,8 +161,8 @@ public void twoViewsOneMotion( boolean homogenous, boolean knownMotion ) {
sameMotionInChain(true);
}
- public void sameMotionInChain( boolean homogenous ) {
- SceneStructureMetric structure = createSceneChainSameMotion(rand, homogenous);
+ public void sameMotionInChain( boolean homogeneous ) {
+ SceneStructureMetric structure = createSceneChainSameMotion(rand, homogeneous);
SceneObservations observations = createObservations(rand, structure);
var param = new double[structure.getParameterCount()];
@@ -210,8 +210,8 @@ public void sameMotionInChain( boolean homogenous ) {
* Create a scene where a "stereo" camera is created that moves. The right to left transform is fixed and common
* across all views
*/
- static SceneStructureMetric createSceneChainSameMotion( Random rand, boolean homogenous ) {
- SceneStructureMetric out = new SceneStructureMetric(homogenous);
+ static SceneStructureMetric createSceneChainSameMotion( Random rand, boolean homogeneous ) {
+ SceneStructureMetric out = new SceneStructureMetric(homogeneous);
int numSteps = 3;
out.initialize(1, numSteps, 5);
@@ -222,7 +222,7 @@ static SceneStructureMetric createSceneChainSameMotion( Random rand, boolean hom
// Create a fixed transform for left to right camera
int motionIdx = out.addMotion(false, SpecialEuclideanOps_F64.eulerXyz(0.25, 0.01, -0.05, 0.01, 0.02, -0.1, null));
- if (homogenous) {
+ if (homogeneous) {
for (int i = 0; i < out.points.size; i++) {
double w = rand.nextDouble()*0.5 + 0.5;
out.setPoint(i, w*(i + 1), w*(i + 2*rand.nextGaussian()), w*(2*i - 3*rand.nextGaussian()), w);
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentMetricResidualFunction.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentMetricResidualFunction.java
index 6c17a06334..216e97e1c7 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentMetricResidualFunction.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentMetricResidualFunction.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -50,8 +50,8 @@ class TestBundleAdjustmentMetricResidualFunction extends BoofStandardJUnit {
multipleCalls(false, false, true);
}
- void multipleCalls( boolean homogenous, boolean hasRigid, boolean hasRelative ) {
- SceneStructureMetric structure = createScene(rand, homogenous, hasRigid, hasRelative);
+ void multipleCalls( boolean homogeneous, boolean hasRigid, boolean hasRelative ) {
+ SceneStructureMetric structure = createScene(rand, homogeneous, hasRigid, hasRelative);
SceneObservations obs = createObservations(rand, structure);
var param = new double[structure.getParameterCount()];
@@ -78,8 +78,8 @@ void multipleCalls( boolean homogenous, boolean hasRigid, boolean hasRelative )
changeInParamChangesOutput(false);
}
- void changeInParamChangesOutput( boolean homogenous ) {
- SceneStructureMetric structure = createScene(rand, homogenous, false, false);
+ void changeInParamChangesOutput( boolean homogeneous ) {
+ SceneStructureMetric structure = createScene(rand, homogeneous, false, false);
var param = new double[structure.getParameterCount()];
new CodecSceneStructureMetric().encode(structure, param);
@@ -120,8 +120,8 @@ void changeInParamChangesOutput( boolean homogenous ) {
chainedRelativeViews(false);
}
- void chainedRelativeViews( boolean homogenous ) {
- SceneStructureMetric structure = createScene(rand, homogenous, false, false);
+ void chainedRelativeViews( boolean homogeneous ) {
+ SceneStructureMetric structure = createScene(rand, homogeneous, false, false);
// Make each view be relative to the previous view
structure.views.forIdx(( i, v ) -> v.parent = i > 0 ? structure.views.data[i - 1] : null);
@@ -166,8 +166,8 @@ void chainedRelativeViews( boolean homogenous ) {
cameraState(false);
}
- void cameraState( boolean homogenous ) {
- SceneStructureMetric structure = createSceneZoomState(rand, homogenous);
+ void cameraState( boolean homogeneous ) {
+ SceneStructureMetric structure = createSceneZoomState(rand, homogeneous);
SceneObservations observations = createObservations(rand, structure);
// Add the camera state to all observation views
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveResidualFunction.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveResidualFunction.java
index 616e52ab1b..631fc1424b 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveResidualFunction.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveResidualFunction.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -43,8 +43,8 @@ void multipleCalls() {
multipleCalls(true);
}
- void multipleCalls( boolean homogenous ) {
- SceneStructureProjective structure = homogenous ? createSceneH(rand) : createScene3D(rand);
+ void multipleCalls( boolean homogeneous ) {
+ SceneStructureProjective structure = homogeneous ? createSceneH(rand) : createScene3D(rand);
SceneObservations obs = createObservations(rand, structure);
double[] param = new double[structure.getParameterCount()];
@@ -72,8 +72,8 @@ void changeInParamChangesOutput() {
changeInParamChangesOutput(true);
}
- void changeInParamChangesOutput( boolean homogenous ) {
- SceneStructureProjective structure = homogenous ? createSceneH(rand) : createScene3D(rand);
+ void changeInParamChangesOutput( boolean homogeneous ) {
+ SceneStructureProjective structure = homogeneous ? createSceneH(rand) : createScene3D(rand);
double[] param = new double[structure.getParameterCount()];
new CodecSceneStructureProjective().encode(structure, param);
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveSchurJacobian_DDRM.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveSchurJacobian_DDRM.java
index a162da590a..b81bbb4e7d 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveSchurJacobian_DDRM.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveSchurJacobian_DDRM.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -54,7 +54,7 @@ void compareToNumerical_3D() {
}
@Test
- void compareToNumerical_Homogenous() {
+ void compareToNumerical_Homogeneous() {
SceneStructureProjective structure = createSceneH(rand);
SceneObservations observations = createObservations(rand, structure);
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveSchurJacobian_DSCC.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveSchurJacobian_DSCC.java
index 0175e1f60e..1576a804c1 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveSchurJacobian_DSCC.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestBundleAdjustmentProjectiveSchurJacobian_DSCC.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -54,7 +54,7 @@ void compareToNumerical_3D() {
}
@Test
- void compareToNumerical_Homogenous() {
+ void compareToNumerical_Homogeneous() {
SceneStructureProjective structure = createSceneH(rand);
SceneObservations observations = createObservations(rand, structure);
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestCodecSceneStructureMetric.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestCodecSceneStructureMetric.java
index 21a2169ef6..8505336314 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestCodecSceneStructureMetric.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/bundle/TestCodecSceneStructureMetric.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -43,22 +43,22 @@ class TestCodecSceneStructureMetric extends BoofStandardJUnit {
encode_decode(false, true);
}
- void encode_decode( boolean homogenous, boolean hasRigid ) {
- SceneStructureMetric original = createScene(rand, homogenous, hasRigid, false);
+ void encode_decode( boolean homogeneous, boolean hasRigid ) {
+ SceneStructureMetric original = createScene(rand, homogeneous, hasRigid, false);
CodecSceneStructureMetric codec = new CodecSceneStructureMetric();
- int pointLength = homogenous ? 4 : 3;
+ int pointLength = homogeneous ? 4 : 3;
int N = original.getUnknownMotionCount()*6 + original.getUnknownRigidCount()*6 +
original.points.size*pointLength + original.getUnknownCameraParameterCount();
assertEquals(N, original.getParameterCount());
double[] param = new double[N];
codec.encode(original, param);
- SceneStructureMetric found = createScene(rand, homogenous, hasRigid, false);
+ SceneStructureMetric found = createScene(rand, homogeneous, hasRigid, false);
codec.decode(param, found);
- assertEquals(homogenous, found.isHomogenous());
+ assertEquals(homogeneous, found.isHomogeneous());
for (int i = 0; i < original.points.size; i++) {
assertTrue(original.points.data[i].distance(found.points.data[i]) < UtilEjml.TEST_F64);
}
@@ -99,8 +99,8 @@ void encode_decode( boolean homogenous, boolean hasRigid ) {
}
}
- static SceneStructureMetric createScene( Random rand, boolean homogenous, boolean hasRigid, boolean hasRelative ) {
- var out = new SceneStructureMetric(homogenous);
+ static SceneStructureMetric createScene( Random rand, boolean homogeneous, boolean hasRigid, boolean hasRelative ) {
+ var out = new SceneStructureMetric(homogeneous);
int numRigid = hasRigid ? 2 : 0;
@@ -121,7 +121,7 @@ static SceneStructureMetric createScene( Random rand, boolean homogenous, boolea
for (int i = 0; i < out.rigids.size; i++) {
SceneStructureMetric.Rigid r = out.rigids.data[i];
- if (homogenous) {
+ if (homogeneous) {
for (int j = 0; j < r.points.length; j++) {
// sign shouldn't matter
double sign = rand.nextBoolean() ? -1 : 1;
@@ -150,7 +150,7 @@ static SceneStructureMetric createScene( Random rand, boolean homogenous, boolea
}
out.assignIDsToRigidPoints();
- if (homogenous) {
+ if (homogeneous) {
for (int i = 0; i < out.points.size; i++) {
// sign shouldn't matter
double sign = rand.nextBoolean() ? -1 : 1;
@@ -196,8 +196,8 @@ static SceneStructureMetric createScene( Random rand, boolean homogenous, boolea
* Create a scene where a "stereo" camera is created that moves. The right to left transform is fixed and common
* across all views
*/
- static SceneStructureMetric createSceneStereo( Random rand, boolean homogenous ) {
- var out = new SceneStructureMetric(homogenous);
+ static SceneStructureMetric createSceneStereo( Random rand, boolean homogeneous ) {
+ var out = new SceneStructureMetric(homogeneous);
int numSteps = 2;
out.initialize(2, 2*numSteps, 10);
@@ -213,7 +213,7 @@ static SceneStructureMetric createSceneStereo( Random rand, boolean homogenous )
// Create a fixed transform for left to right camera
int leftToRightIdx = out.addMotion(true, SpecialEuclideanOps_F64.eulerXyz(0.25, 0.01, -0.05, 0.01, 0.02, -0.1, null));
- if (homogenous) {
+ if (homogeneous) {
for (int i = 0; i < out.points.size; i++) {
double w = rand.nextDouble()*0.5 + 0.5;
out.setPoint(i, w*(i + 1), w*(i + 2*rand.nextGaussian()), w*(2*i - 3*rand.nextGaussian()), w);
@@ -250,14 +250,14 @@ static SceneStructureMetric createSceneStereo( Random rand, boolean homogenous )
/**
* Create a scene where the camera has an adjustable zoom
*/
- static SceneStructureMetric createSceneZoomState( Random rand, boolean homogenous ) {
- var out = new SceneStructureMetric(homogenous);
+ static SceneStructureMetric createSceneZoomState( Random rand, boolean homogeneous ) {
+ var out = new SceneStructureMetric(homogeneous);
out.initialize(1, 4, 4, 6, 0);
out.setCamera(0, true, new BundleZoomSimplified(0.0, 1.0, 0.04, -0.01));
- if (homogenous) {
+ if (homogeneous) {
for (int i = 0; i < out.points.size; i++) {
double w = rand.nextDouble()*0.5 + 0.5;
out.setPoint(i, w*(i + 1), w*(i + 2*rand.nextGaussian()), w*(2*i - 3*rand.nextGaussian()), w);
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/h/CommonHomographyChecks.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/h/CommonHomographyChecks.java
index 35ef6c382e..bdb1e846af 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/h/CommonHomographyChecks.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/h/CommonHomographyChecks.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -77,7 +77,7 @@ public void createScene( int numPoints, boolean isPixels ) {
AssociatedPair p2 = pairs2D.get(i);
AssociatedPair3D p3 = new AssociatedPair3D();
- // same point but in homogenous coordinates and Z isn't always 1
+ // same point but in homogeneous coordinates and Z isn't always 1
double z = 1.0 + rand.nextGaussian()*0.1;
p3.p1.setTo(p2.p1.x*z, p2.p1.y*z, z);
p3.p2.setTo(p2.p2.x*z, p2.p2.y*z, z);
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/ChecksMotionNPointHomogenous.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/ChecksMotionNPointHomogeneous.java
similarity index 95%
rename from main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/ChecksMotionNPointHomogenous.java
rename to main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/ChecksMotionNPointHomogeneous.java
index 98a54a7b6a..48ca07a1a1 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/ChecksMotionNPointHomogenous.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/ChecksMotionNPointHomogeneous.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -37,7 +37,7 @@
*
* @author Peter Abeles
*/
-public abstract class ChecksMotionNPointHomogenous extends CommonMotionNPointHomogenous {
+public abstract class ChecksMotionNPointHomogeneous extends CommonMotionNPointHomogeneous {
public abstract DMatrixRMaj compute( List obs, List locations );
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonMotionNPointHomogenous.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonMotionNPointHomogeneous.java
similarity index 94%
rename from main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonMotionNPointHomogenous.java
rename to main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonMotionNPointHomogeneous.java
index 49151e35fd..df1d835184 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonMotionNPointHomogenous.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonMotionNPointHomogeneous.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2020, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -37,7 +37,7 @@
*
* @author Peter Abeles
*/
-public class CommonMotionNPointHomogenous extends BoofStandardJUnit {
+public class CommonMotionNPointHomogeneous extends BoofStandardJUnit {
// Projection matrix 3x4
protected DMatrixRMaj projection;
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonThreeViewHomogenous.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonThreeViewHomogeneous.java
similarity index 96%
rename from main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonThreeViewHomogenous.java
rename to main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonThreeViewHomogeneous.java
index 3b7fd15baa..bf10bfe09f 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonThreeViewHomogenous.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/CommonThreeViewHomogeneous.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -34,7 +34,7 @@
import java.util.ArrayList;
import java.util.List;
-public abstract class CommonThreeViewHomogenous extends BoofStandardJUnit {
+public abstract class CommonThreeViewHomogeneous extends BoofStandardJUnit {
protected DMatrixRMaj K = PerspectiveOps.pinholeToMatrix(
new CameraPinhole(500,500,0,250,250,1000,1000),(DMatrixRMaj)null);
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestCompatibleProjectiveHomography.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestCompatibleProjectiveHomography.java
index 7ef2629d27..48e835bb1a 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestCompatibleProjectiveHomography.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestCompatibleProjectiveHomography.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -42,7 +42,7 @@
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
-public class TestCompatibleProjectiveHomography extends CommonThreeViewHomogenous {
+public class TestCompatibleProjectiveHomography extends CommonThreeViewHomogeneous {
List camerasB;
List sceneB;
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestPRnPDirectLinearTransform.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestPRnPDirectLinearTransform.java
index af9d5bf1a8..535b527918 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestPRnPDirectLinearTransform.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestPRnPDirectLinearTransform.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -31,7 +31,7 @@
import static org.junit.jupiter.api.Assertions.assertTrue;
-class TestPRnPDirectLinearTransform extends CommonMotionNPointHomogenous {
+class TestPRnPDirectLinearTransform extends CommonMotionNPointHomogeneous {
/**
* No noise minimal case. General structure
*/
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestPoseFromPairLinear6.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestPoseFromPairLinear6.java
index 491a45f769..cb8f7652c3 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestPoseFromPairLinear6.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/pose/TestPoseFromPairLinear6.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -69,13 +69,13 @@ public Se3_F64 compute(List obs, List locations) {
}
@Nested
- class Projective extends ChecksMotionNPointHomogenous
+ class Projective extends ChecksMotionNPointHomogeneous
{
@Override
public DMatrixRMaj compute(List obs, List locations) {
PoseFromPairLinear6 alg = new PoseFromPairLinear6();
- alg.processHomogenous(obs,locations);
+ alg.processHomogeneous(obs,locations);
return alg.getProjective();
}
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/triangulate/CommonTriangulationChecks.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/triangulate/CommonTriangulationChecks.java
index 84908691f1..fbaec8463f 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/triangulate/CommonTriangulationChecks.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/triangulate/CommonTriangulationChecks.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -69,7 +69,7 @@ public void createScene( Point3D_F64 worldPoint ) {
public void createScene( Point4D_F64 point ) {
worldPointH = point.copy();
- PerspectiveOps.homogenousTo3dPositiveZ(point, Double.MAX_VALUE, 1e-16, worldPoint);
+ PerspectiveOps.homogeneousTo3dPositiveZ(point, Double.MAX_VALUE, 1e-16, worldPoint);
motionWorldToCamera = new ArrayList<>();
obsNorm = new ArrayList<>();
obsPointing = new ArrayList<>();
diff --git a/main/boofcv-geo/src/test/java/boofcv/alg/geo/triangulate/TestTriangulate2ViewsGeometricMetric.java b/main/boofcv-geo/src/test/java/boofcv/alg/geo/triangulate/TestTriangulate2ViewsGeometricMetric.java
index 6da85aba07..5041b63c68 100644
--- a/main/boofcv-geo/src/test/java/boofcv/alg/geo/triangulate/TestTriangulate2ViewsGeometricMetric.java
+++ b/main/boofcv-geo/src/test/java/boofcv/alg/geo/triangulate/TestTriangulate2ViewsGeometricMetric.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -45,7 +45,7 @@ public class TestTriangulate2ViewsGeometricMetric extends CommonTriangulationChe
}
}
- @Test void triangulate_two_homogenous() {
+ @Test void triangulate_two_homogeneous() {
createScene();
var alg = new Triangulate2ViewsGeometricMetric();
diff --git a/main/boofcv-geo/todo.txt b/main/boofcv-geo/todo.txt
index 055e3d332b..e5a0109ade 100644
--- a/main/boofcv-geo/todo.txt
+++ b/main/boofcv-geo/todo.txt
@@ -4,7 +4,7 @@
- Compare EPnP directly to author's c code
- Bundle Adjustment
- * Using homogenous coordinates
+ * Using homogeneous coordinates
* compare to opencv
- Triangulation Stability
diff --git a/main/boofcv-io/src/main/java/boofcv/io/geo/MultiViewIO.java b/main/boofcv-io/src/main/java/boofcv/io/geo/MultiViewIO.java
index 6ffb3afdf0..f63883fc59 100644
--- a/main/boofcv-io/src/main/java/boofcv/io/geo/MultiViewIO.java
+++ b/main/boofcv-io/src/main/java/boofcv/io/geo/MultiViewIO.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2023, Peter Abeles. All Rights Reserved.
+ * Copyright (c) 2024, Peter Abeles. All Rights Reserved.
*
* This file is part of BoofCV (http://boofcv.org).
*
@@ -252,7 +252,7 @@ public static void save( SceneStructureMetric scene, Writer outputWriter ) {
data.put("rigids", rigids);
data.put("cameras", cameras);
data.put("points", points);
- data.put("homogenous", scene.isHomogenous());
+ data.put("homogeneous", scene.isHomogeneous());
data.put("data_type", "SceneStructureMetric");
data.put("version", 0);
@@ -464,7 +464,7 @@ public static SceneStructureMetric load( Reader reader, @Nullable SceneStructure
Map data = yaml.load(reader);
try {
reader.close();
- boolean homogenous = getOrThrow(data, "homogenous");
+ boolean homogeneous = getOrThrow(data, "homogeneous");
List