|
double | get_3d_height (const Vector &bottom_2d, const Vector &top_2d, const Perspective_camera &camera) |
| Back project the 2d points to find the height in 3D. Assume that the bottom is on the ground. More...
|
|
void | swap (Perspective_camera &cam1, Perspective_camera &cam2) |
| Swap two cameras. More...
|
|
std::ofstream & | operator<< (std::ofstream &out, const Quaternion &q) |
|
Turntable_camera | regularize_turntable_cameras (const std::vector< Calibrated_camera > &cameras_) |
|
std::vector< Deva_detection > | parse_deva_detection (std::istream &is, const std::string &type=std::string("person")) |
| Parse the output from Deva's part detector into a vector of Deva_detection. More...
|
|
std::vector< Deva_detection > | parse_deva_detection (std::istream &is, double score_thresh, const std::string &type=std::string("person")) |
| Parse the output from Deva's part detector and prune by the confidence score. More...
|
|
Deva_detection | parse_deva_detection_line (const std::string &line, const std::string &type=std::string("person")) |
| Parse the output from Deva's part detector. More...
|
|
std::vector< Deva_facemark > | parse_deva_facemark (std::istream &is) |
| Parse the output from Deva's face detector into a vector of Deva_facemark. More...
|
|
Deva_facemark | parse_deva_facemark_line (const std::string &line) |
| Parse the output from Deva's face detector. More...
|
|
void | write_deva_facemark (const std::vector< Deva_facemark > &faces, std::ostream &os) |
| Write the output from Deva's face detector into a vector of Deva_facemark. More...
|
|
void | write_deva_facemark_line (const Deva_facemark &face, std::ostream &os) |
| Write the output from Deva's face detector. More...
|
|
Vector | gaze_direction (const Face_detection &face, const Perspective_camera &camera) |
| Computes the direction of the gaze. More...
|
|
Vector | face_location_3d (const Face_detection &face, const Perspective_camera &camera, const Bbox &body_box) |
| Computes the 3D location of a face. More...
|
|
std::ostream & | operator<< (std::ostream &ost, const Face_detection &face) |
| Writes the face into ostream. More...
|
|
bool | operator< (const Face_detection &f1, const Face_detection &f2) |
| Compares to boxes using middle of box. Needed because we have associated containers of these. More...
|
|
Face_detection | parse_face_line (const std::string &line) |
| Parse a line of a file (in face.com format) into a Face_Detection. More...
|
|
std::vector< Face_detection > | read_face_file (std::istream &is) |
| Read set of faces from file (in face.com format). More...
|
|
std::vector< std::vector
< Face_detection > > | read_face_files (const std::vector< std::string > &face_fps) |
| Parse the output of the faces from multiple files into a vector of vector of Face_detection. More...
|
|
std::vector< std::string > | get_all_detection_type_names () |
| Get all types. More...
|
|
const std::string & | get_detection_type_name (Detection_type type) |
| Get the name of a detection type. More...
|
|
Detection_type | get_detection_type (const std::string &name) |
| Get the type of a detection name. More...
|
|
std::ostream & | operator<< (std::ostream &ost, Detection_type type) |
| Stream out an detection. More...
|
|
std::istream & | operator>> (std::istream &ist, Detection_type &type) |
| Stream in an detection. More...
|
|
Matrix | fourier_basis (size_t D, size_t num_basis_funcs) |
| Returns a matrix whose rows form a Fourier basis in R^D. More...
|
|
template<class Func , class Model , class Adapter > |
Vector | gradient_cfd (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter) |
| Computes the gradient of a function, evaluated at a point, using central finite differences. More...
|
|
template<class Func , class Vec > |
Vector | gradient_cfd (const Func &f, const Vec &x, const std::vector< double > &dx) |
| Computes the gradient of a function, evaluated at a point, using central finite differences, for a vectory-style model. More...
|
|
template<class Func , class Model , class Adapter > |
Vector | gradient_ffd (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter) |
| Computes the gradient of a function, evaluated at a point, using forward finite differences. More...
|
|
template<class Func , class Vec > |
Vector | gradient_ffd (const Func &f, const Vec &x, const std::vector< double > &dx) |
| Computes the gradient of a function, evaluated at a point, using forward finite differences, for a vectory-style model. More...
|
|
template<class Func , class Model , class Adapter > |
Vector | gradient_ind_cfd (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter) |
| Computes the gradient of a function, evaluated at a point, using central finite differences. More...
|
|
template<class Func , class Vec > |
Vector | gradient_ind_cfd (const Func &f, const Vec &x, const std::vector< double > &dx) |
| Computes the gradient of a function, evaluated at a point, using central finite differences for a vector-style model. More...
|
|
template<class Func , class Model , class Adapter > |
void | gradient_cfd_mt_worker (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter, size_t i_start, size_t i_end, Vector &v) |
| Helper function for gradient_cfd_mt. More...
|
|
template<class Func , class Model , class Adapter > |
void | gradient_ffd_mt_worker (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter, double fx, size_t i_start, size_t i_end, Vector &v) |
| Helper function for gradient_ffd_mt. More...
|
|
template<class Func , class Model , class Adapter > |
Vector | gradient_cfd_mt (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter, size_t nt) |
| Computes the gradient of a function, evaluated at a point, using central finite differences. Multi-threaded version. More...
|
|
template<class Func , class Vec > |
Vector | gradient_cfd_mt (const Func &f, const Vec &x, const std::vector< double > &dx, size_t nt=0) |
| Computes the gradient of a function, evaluated at a point, using central finite differences, for a vectory-style model. Multi-threaded version. More...
|
|
template<class Func , class Model , class Adapter > |
Vector | gradient_ffd_mt (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter, size_t nt) |
| Computes the gradient of a function, evaluated at a point, using forward finite differences. Multi-threaded version. More...
|
|
template<class Func , class Vec > |
Vector | gradient_ffd_mt (const Func &f, const Vec &x, const std::vector< double > &dx, size_t nt=0) |
| Computes the gradient of a function, evaluated at a point, using forward finite differences, for a vectory-style model. Multi-threaded version. More...
|
|
template<class Func , class Model , class Adapter > |
void | gradient_ind_cfd_mt_worker (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter, size_t i_start, size_t i_end, Vector &v) |
| Helper function for gradient_ind_cfd_mt. More...
|
|
template<class Func , class Model , class Adapter > |
Vector | gradient_ind_cfd_mt (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter, size_t nt) |
| Computes the gradient of a function, evaluated at a point, using central finite differences. Multithreaded version. More...
|
|
template<class Func , class Vec > |
Vector | gradient_ind_cfd_mt (const Func &f, const Vec &x, const std::vector< double > &dx, size_t nt=0) |
| Computes the gradient of a function, evaluated at a point, using central finite differences for a vector-style model. Multi-threaded version. More...
|
|
template<class Func , class Model , class Adapter > |
Matrix | hessian (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter) |
| Computes the Hessian of a function, evaluated at a point, using finite differences. More...
|
|
template<class Func , class Vec > |
Matrix | hessian (const Func &f, const Vec &x, const std::vector< double > &dx) |
| Computes the Hessian of a function, evaluated at a point, for a vector-style model. More...
|
|
template<class Func , class Model , class Adapter > |
Matrix | hessian_symmetric (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter) |
| Computes the Hessian of a function, evaluated at a point, using finite differences. This function assumes that the Hessian is SYMMETRIC, and only computes the lower triangle of it. More...
|
|
template<class Func , class Vec > |
Matrix | hessian_symmetric (const Func &f, const Vec &x, const std::vector< double > &dx) |
| Computes the Hessian of a function, evaluated at a point, for a vector-style model. More...
|
|
template<class Func , class Model , class Adapter > |
Matrix | hessian_diagonal (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter) |
| Computes the diagonal Hessian of a function, evaluated at a point, using finite differences. More...
|
|
template<class Func , class Vec > |
Matrix | hessian_diagonal (const Func &f, const Vec &x, const std::vector< double > &dx) |
| Computes the Hessian of a function, evaluated at a point, for a vector-style model. More...
|
|
template<class Func , class Model , class Adapter > |
Matrix | hessian_ind (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter) |
| Computes the Hessian of a function, evaluated at a point, using finite differences. More...
|
|
template<class Func , class Vec > |
Matrix | hessian_ind (const Func &f, const Vec &x, const std::vector< double > &dx) |
| Computes the Hessian of a "independent" function, evaluated at a point, for a vector-style model. More...
|
|
template<class Func , class Model , class Adapter > |
Matrix | hessian_symmetric_ind (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter) |
| Computes the Hessian of an "independent" function, evaluated at a point, using finite differences. This function assumes that the Hessian is SYMMETRIC, and only computes the lower triangle of it. More...
|
|
template<class Func , class Vec > |
Matrix | hessian_symmetric_ind (const Func &f, const Vec &x, const std::vector< double > &dx) |
| Computes the Hessian of an "independent" function, evaluated at a point, for a vector-style model. More...
|
|
template<class Func , class Model , class Adapter > |
Vector | hessian_ind_diagonal (const Func &f, const Model &x, const std::vector< double > &dx, const Adapter &adapter, size_t is, size_t ie) |
| Computes the Hessian diagonal of a function, evaluated at a point, using finite differences. More...
|
|
template<class Func , class Vec > |
Vector | hessian_ind_diagonal (const Func &f, const Vec &x, const std::vector< double > &dx, size_t is, size_t ie) |
| Computes the Hessian diagonal of a "independent" function, evaluated at a point, for a vector-style model. More...
|
|
template<class F , class M , class A > |
double | grid_maximize (const F &fcn, const std::vector< std::pair< double, double > > &bounds, size_t nbins, const A &adapter, M &mxm) |
| Maximizes a function by evaluating at all points in a grid. More...
|
|
template<class F , class V > |
double | grid_maximize (const F &fcn, const std::vector< std::pair< double, double > > &bounds, size_t nbins, V &mxm) |
| Maximizes a function by evaluating at all points in a grid. More...
|
|
template<class F , class M , class G , class A > |
void | gradient_ascent (const F &fcn, M &x, const std::vector< double > &steps, const G &grad, const A &adapter) |
| Maximizes a function using a simple gradient ascent method. More...
|
|
template<class F , class V , class G > |
void | gradient_ascent (const F &fcn, V &x, const std::vector< double > &steps, const G &grad) |
| Maximizes a function using a simple gradient ascent method. More...
|
|
template<class F , class M , class A > |
void | refine_max (const F &fcn, M &x, const std::vector< double > &steps, const A &adapter) |
| Refine the maximum of a function. More...
|
|
template<class Model , class Adapter > |
void | move_param (Model &x, size_t i, double dv, const Adapter &aptr) |
| Helper function that moves a parameter by an amount. More...
|
|
template<class Model , class Adapter > |
void | move_params (Model &x, size_t i, size_t j, double dv, double dw, const Adapter &aptr) |
| Helper function that moves a pair of parameters by an amount. More...
|
|
template<class Model , class Vec , class Adapter > |
void | move_params (Model &x, const Vec &dx, const Adapter &aptr) |
| Helper function that moves all parameters by specified vector. More...
|
|
template<class M , class A > |
bool | next_point (const std::vector< std::pair< double, double > > &bounds, const std::vector< double > &widths, size_t nbins, std::vector< size_t > &indices, M &x, const A &adapter) |
| Gets the next point in a N-dimensional grid. More...
|
|
const Vector & | get_bottom_y (const Line_segment &seg) |
| Get end-point with lowest y-value. More...
|
|
const Vector & | get_top_y (const Line_segment &seg) |
| Get end-point with highest y-value. More...
|
|
template<class InputIterator > |
std::vector
< Collinear_segment_chain > | find_collinear_segment_chains (InputIterator first, InputIterator last, double distance_threshold, double orientation_threshold) |
| Find a set of collinear_segments_chains. More...
|
|
Image | edges_to_image (const Edge_set &edges, bool invert, size_t remove_borders) |
|
Edge_set_ptr | edge_image_to_edge_points (const Image &i, bool oriented) |
|
void | load (Edge_set &edges, const std::string &fname) |
|
void | save (const Edge_set &edges, const std::string &fname) |
|
void | swap (Chamfer_transform &op1, Chamfer_transform &op2) |
|
std::ostream & | operator<< (std::ostream &out, const Edge_segment &es) |
|
Features_manager * | detect_hoiem_features_manager (const std::string &img_path) |
|
void | compute_HOG_features (const Image &img, int bin_size) |
|
void | rotate_matrix_90_degrees (Matrix &m, int number_of_times) |
|
void | rotateMatrix (Matrix &m, double angle) |
|
void | detect_long_connected_segments (Line_segment_set &segments, const std::string &img_path, int max_length) |
|
std::ostream & | operator<< (std::ostream &out, const Manhattan_corner &mc) |
|
std::ostream & | operator<< (std::ostream &out, const Manhattan_corner_segment &mcs) |
|
std::ostream & | operator<< (std::ostream &out, const Manhattan_segment &ms) |
|
Manhattan_world * | create_manhattan_world_from_CMU_file (const std::string &file_name) |
|
Manhattan_world * | create_mw_from_CMU_file_and_compute_focal_length (const std::string &file_name, const kjb::Edge_segment_set &iset, unsigned int num_rows, unsigned int num_cols) |
|
void | read_CMU_vanishing_points (std::vector< Vanishing_point > &vpts, double &focal_length, std::string file_name) |
|
void | draw_mid_point_to_vanishing_point (kjb::Image &img, const Line_segment &segment, const Vanishing_point &vpt, double ir, double ig, double ib, double width) |
|
bool | find_vanishing_point_given_one_and_line (const kjb::Vanishing_point &vp1, double focal, unsigned int img_cols, unsigned int img_rows, const Line_segment &ls, Vanishing_point &vpt) |
|
bool | find_third_vanishing_point (const kjb::Vanishing_point &vp1, const kjb::Vanishing_point &vp2, double focal, unsigned int img_rows, unsigned int img_cols, Vanishing_point &vpt) |
|
bool | read_hedau_vanishing_points (std::vector< Vanishing_point > &vpts, double &focal, const std::string &file_path, unsigned int num_cols, unsigned int num_rows) |
|
bool | find_vertical_vanishing_point (Vanishing_point &vp1, Vanishing_point &vp2, Vanishing_point &estimated_vertical, unsigned int img_cols, unsigned int img_rows) |
|
bool | robustly_estimate_vanishing_points (std::vector< Vanishing_point > &vpts, double &focal_length, const kjb::Image &img, double success_probability=VPD_RANSAC_ROBUST_SUCCESS_PROBABILITY, bool jointly_estimate=false, std::vector< Vanishing_point > right_ones=std::vector< Vanishing_point >(0)) |
| Estimates the vanishing points for the three orthogonal directions of a Manhattan world scene (where most of all planes are aligned with three main orthogonal directions). This function works ONLY under the Manhattan world assumption. More...
|
|
bool | robustly_estimate_vertical_vanishing_point (Vanishing_point &vertical, const kjb::Image &img, double success_probability=VPD_RANSAC_ROBUST_SUCCESS_PROBABILITY) |
|
bool | relaxed_vanishing_point_estimation (std::vector< Vanishing_point > &vpts, double &focal_length, const kjb::Image &img, double success_probability) |
| This function uses less constraints coming from geometry and uses the data more, relying on the assumption that there is less noise. This is convenient with synthetic data. More...
|
|
unsigned int | assign_to_vanishing_point (double outlier_threshold, const Line_segment *isegment, const std::vector< Vanishing_point > &ivpts) |
| Assigns an edge segments to the vanishing point that minimizes the angle between the segment and the line between the midpoint of the segment and the vanishing point. If this angle is too big for all vanishing points, the segment is labeled as an outlier. This checks using different outlier thresholds and can be time consuming (ie 1-5 seconds). More...
|
|
double | robustly_estimate_vanishing_points_Kovesi (std::vector< Vanishing_point > &vpts, double &focal_length, const Image &img, const Line_segment_set &kovesi, double start_threshold=0.05, double vpts_tolerance=VPD_MAX_PRINCIPAL_POINT_POSITION_TOLERANCE, double success_probability=VPD_RANSAC_ROBUST_SUCCESS_PROBABILITY) |
|
bool | detect_vanishing_points (std::vector< Vanishing_point > &vpts, double &focal_length, const std::string &img_path) |
|
Vector | average_flow (const Matrix &x_flows, const Matrix &y_flows, const Axis_aligned_rectangle_2d &roi) |
| Get the average optical flow inside a rectangle region. More...
|
|
Matrix | flow_magnitude (const Matrix &x_flows, const Matrix &y_flows) |
| Compute the flow magnitude. More...
|
|
Flow_feature_set | read_flow_features (const std::string &fname) |
| Read in the procomputed optical flow from files. More...
|
|
std::vector< Feature_pair > | look_up_features (const Flow_feature_set &of_set, const Axis_aligned_rectangle_2d &box) |
| Given the features and a bounding box at the same frame, find and return the detected features inside the bounding box. More...
|
|
std::vector< Feature_pair > | look_up_bg_features (const Flow_feature_set &of_set, const std::vector< Axis_aligned_rectangle_2d > &model_boxes) |
| Given the features and all the model boxes at cur_frame, find all the background features. More...
|
|
Vector | average_flow (const std::vector< Vector > &flows) |
| Calculate the average optical flow for a vector of flow Vectors. More...
|
|
bool | compare_flow_magnitude (const Vector &f_p, const Vector &f_n) |
| Compare the optical flow magnitude. More...
|
|
std::vector< Vector > | valid_flow (const std::vector< Feature_pair > &feature_pairs, double percentile=1.0) |
| Get valid features. More...
|
|
std::vector< Vector > | valid_flow (const std::vector< Feature_pair > &feature_pairs, const std::vector< size_t > &angle_hist) |
| Get valid flow features that with angle alpha in the rangle (min_angle, max_angle) More...
|
|
std::vector< size_t > | angle_histogram (const std::vector< Feature_pair > &feature_pairs, size_t num_bins=36) |
| Compute the histogram of the flow vector angles. More...
|
|
Vector | update_average_velocity (const Flow_feature_set &of_set, const Axis_aligned_rectangle_2d &old_model_box, const Vector &old_velocity, MOVE_DIRECTION dir, size_t unit=1) |
| Update the average flow velocity based on the moving direction. More...
|
|
Vector | update_average_velocity (const Flow_feature_set &of_set, const Axis_aligned_rectangle_2d &old_box, const Axis_aligned_rectangle_2d &new_box, const Vector &old_velocity) |
| Update the average model velocity. More...
|
|
Vector | lookup_feature (const Flow_feature_set &of_set, size_t x, size_t y, size_t subsample_sz=1) |
| Looks up a feature in a feature set; deals with subsampling. More...
|
|
Vector | total_flow (const Flow_feature_set &of_set, const Axis_aligned_rectangle_2d &box) |
| Compute the average flow vector inside the bounding box. More...
|
|
void | draw_features (Image &img, const std::vector< Feature_pair > &features, const Vector &average_flow, Image::Pixel_type feature_pixel=fpix, Image::Pixel_type ave_flow_pixel=apix) |
| Draw the optical flow features and the average flow. More...
|
|
template<class VectorType , class MatrixType , class M_MatrixType > |
VectorType | backproject_dispatch_ (const VectorType &homo_screen_coord, const MatrixType &camera_matrix) |
|
Vector3 | backproject (const Vector3 &homo_camera_coord, const Matrix_d< 3, 4 > &camera_matrix) |
| Same as backproject(), but using Vector3. More...
|
|
Vector | backproject (const Vector &homo_screen_coord, const Matrix &camera_matrix) |
|
template<class VectorType , class MatrixType > |
VectorType | backproject_with_m_inv_dispatch_ (const VectorType &homo_screen_coord, const MatrixType &M_inv) |
|
Vector | backproject_with_m_inv (const Vector &homo_screen_coord, const Matrix &M_inv) |
|
Vector3 | backproject_with_m_inv (const Vector3 &homo_screen_coord, const Matrix_d< 3, 3 > &M_inv) |
| Same as backproject_with_m_inv(), but using Vector3. More...
|
|
Matrix | lerp_extrinsic_camera_matrix (const Matrix &m1, const Matrix &m2, double t, bool use_slerp=false) |
| Linearly-interpolate a two extrinsic camera matrices. More...
|
|
Matrix | lerp_extrinsic_camera_matrix (const std::vector< Matrix > &extrinsic, const std::vector< double > ×tamps, double t, bool use_slerp=false) |
| Linearly-interpolate a set of extrinsic camera matrix at given timestamps. More...
|
|
std::ostream & | operator<< (std::ostream &ost, const Calibration_descriptor::Coord_convention &mode) |
|
std::istream & | operator>> (std::istream &ist, Calibration_descriptor::Coord_convention &mode) |
|
void | standardize_camera_matrices (Matrix &intrinsic, Matrix &rotation, Vector &translation, const Calibration_descriptor &cal) |
|
void | decompose_camera_matrix (const Matrix &camera_matrix, Matrix &intrinsic, Matrix &rotation, Vector &translation) |
|
int | get_convex_hull (const Matrix &points, Matrix &hull_vertices, std::vector< Matrix > &hull_facets) |
| Get the convex hull of points hull_vertices stores the vertices of the convex hull hull_facets stores the facets of the hull. More...
|
|
bool | intersect_hulls (const std::vector< Matrix > &pts, Matrix &hull_vertices, std::vector< Matrix > &hull_facets) |
| Compute the intersections of the vector of points. More...
|
|
double | get_convex_hull_volume (const kjb::Matrix &points) |
| Get the volume of the convex hull of points. More...
|
|
bool | intersect_3D_line_with_plane (kjb::Vector &intersection, double &t, const kjb::Vector &point, const kjb::Vector &direction, const kjb::Vector &plane) |
|
template<class VectorType > |
double | intersect_line_with_plane_dispatch_ (const VectorType &line_point, const VectorType &line_direction, const VectorType &plane_point, const VectorType &plane_normal) |
|
double | intersect_line_with_plane (const kjb::Vector &line_point, const kjb::Vector &line_direction, const kjb::Vector &plane_point, const kjb::Vector &plane_normal) |
|
template<std::size_t D> |
double | intersect_line_with_plane (const kjb::Vector_d< D > &line_point, const kjb::Vector_d< D > &line_direction, const kjb::Vector_d< D > &plane_point, const kjb::Vector_d< D > &plane_normal) |
| intersect a D-dimensional line an plane, using point-vector representation. (static version) More...
|
|
Vector | project_point_onto_line (const Vector &A, const Vector &B, const Vector &P) |
| Project a point onto a line, in any dimension. More...
|
|
void | get_3D_corner_orientation_from_2D_corner_lines (const kjb::Vector &corner2D_1, const kjb::Vector &corner2D_2, const kjb::Vector &corner2D_3, const kjb::Vector &position_2D, const kjb::Vector &position_3D, double focal_length, int epsilon, kjb::Vector &corner3D_1, kjb::Vector &corner3D_2, kjb::Vector &corner3D_3) |
|
Quaternion | slerp (const Quaternion &q1, const Quaternion &q2, double t) |
|
Quaternion | slerp2 (const Quaternion &q1, const Quaternion &q2, double t) |
|
Quaternion | nlerp (const Quaternion &q1, const Quaternion &q2, double t) |
|
ostream & | operator<< (ostream &out, const Quaternion &q) |
|
double | norm (const Quaternion &q, unsigned int l=2) |
|
Quaternion | difference (const Quaternion &q1, const Quaternion &q2) |
|
void | swap (Quaternion &q1, Quaternion &q2) |
| Non-member swap function. More...
|
|
void | scale (kjb::Axis_aligned_rectangle_2d &box, const kjb::Vector &s) |
|
void | get_projected_bbox_from_3Dpoints (Axis_aligned_rectangle_2d &bb, const std::vector< Vector > &points, const Base_gl_interface &camera, double img_width, double img_height) |
| Projects a set of 3D points onto the image plane, and finds a bounding box (aligned with the image axes), such that it contains all the projected points. More...
|
|
std::ostream & | operator<< (std::ostream &ost, const Axis_aligned_rectangle_2d &box) |
|
std::istream & | operator>> (std::istream &ist, Axis_aligned_rectangle_2d &box) |
|
Bounding_Box2D | intersect (const Bounding_Box2D &b1, const Bounding_Box2D &b2) |
|
double | get_rectangle_intersection (const kjb::Bounding_Box2D &b1, const kjb::Bounding_Box2D &b2) |
| Compute area of intersection of two rectangles. More...
|
|
void | translate (kjb::Axis_aligned_rectangle_2d &box, const kjb::Vector &t) |
|
template<class Iterator > |
Axis_aligned_rectangle_2d | compute_bounding_box (Iterator first, Iterator last) |
| Computes the 2D bounding box of a range of 2D points. More...
|
|
void | swap (Axis_aligned_rectangle_2d &r1, Axis_aligned_rectangle_2d &r2) |
| Swaps two rectangles. More...
|
|
void | get_plane_parameters (const Vector &normal, const Vector &point_on_plane, Vector &plane_params) |
| Finds the coefficients of the plane of the form ax + by + cz + d = 0 given the normal vector and a point on the plane. More...
|
|
void | get_plane_parameters (const Vector &pt1, const Vector &pt2, const Vector &pt3, Vector &plane_params) |
| Finds the coefficients of the plane of the form ax + by + cz + d = 0 given three points on the plane. More...
|
|
bool | check_if_faces_are_coplanar (const Vector &plane1_params, const Vector &plane2_params, double tolerance, double distTolerance=1.0) |
| Checks if two faces in a polymesh are coplanar. More...
|
|
bool | check_if_4_points_are_coplanar (const Vector &p1, const Vector &p2, const Vector &p3, const Vector &p4, double tolerance) |
| Checks if 4 points are coplanar. More...
|
|
double | get_angle_between_two_vectors (const Vector &plane1_params, const Vector &plane2_params) throw (Illegal_argument, KJB_error) |
| Calculates the smaller angle between the normal vectors of two planes. The angle returned is in radians. More...
|
|
void | find_planes (const Polymesh &p, std::vector< Polymesh_Plane > &plane) |
| Finds all of the planes in a polymesh and stores each set of coefficients along with the corresponding face indices in a Polymesh_Plane. More...
|
|
void | render_planes (const Polymesh &p, const std::vector< Polymesh_Plane > &planes) |
| Renders each plane in a polymesh with a different color. More...
|
|
void | find_all_circles_in_polymesh (Polymesh &p, std::vector< Circle_in_3d > &circles, std::vector< std::vector< Vector > > &points) |
| Finds all of the circles and the points that lie on them in the polymesh. More...
|
|
void | find_right_triangles (const std::vector< kjb::Polygon > &faces, Int_vector &mask) |
| Creates an Int_vector mask representing the faces in a polymesh that are right triangles. More...
|
|
void | find_rectangles (const std::vector< kjb::Polygon > &faces, const Int_vector &mask, const Polymesh &p, std::vector< Right_Triangle_Pair > &rectangles) |
| Finds all pairs of right triangles in a polymesh that are coplanar, adjacent along their hypotenuses, and have the same vertices along the shared edge (i.e. the triangle pairs form a rectangle). More...
|
|
void | create_rectangle_mask (const Polymesh &p, const std::vector< Right_Triangle_Pair > &rectangles, Int_vector &rectMask) |
| Creates an Int_vector mask representing the faces in a polymesh that are part of a rectangle. More...
|
|
void | find_adjacent_rectangles (const Polymesh &p, const Int_vector &cylMask, const Int_vector &rectMask, const std::vector< Right_Triangle_Pair > &rectangles, int startIndex, int rectIndex, int prevAdjFace, double width, double lengthTolerance, double &smallestAngle, double &largestAngle, double &sumAngles, std::vector< int > &cyl_indices, Vector &edge_pt1, Vector &edge_pt2, Vector &edge_pt1_adj, Vector &edge_pt_adj) |
| Determines which rectangles are adjacent to eachother and if a group of adjacent rectangles form part of a cylinder. More...
|
|
void | find_cylinders (const Polymesh &p, const std::vector< Right_Triangle_Pair > &rectangles, std::vector< std::vector< int > > &cyl_indices, std::vector< double > &cylSumAngles, std::vector< std::vector< Vector > > &cylEdgePoints) |
| Determines which groups of faces in the polymesh form cylinders. More...
|
|
void | find_top_and_bottom_points_of_cylinder (const Polymesh &p, const Int_vector &rectMask, const std::vector< Right_Triangle_Pair > &rectangles, const std::vector< int > &cyl_indices, std::vector< Vector > &top_points, std::vector< Vector > &bottom_points) |
| Determines which points make up the 'top' and which points make up the 'bottom' of the cylinder specified by the provided polymesh face indices. More...
|
|
void | find_centroid_of_3d_points (const std::vector< Vector > &points, Vector ¢roid) |
| Finds the center of a set of 3D points. More...
|
|
void | fit_plane_to_3d_points (const std::vector< Vector > &points, const Vector ¢roid, Vector &plane_params) |
| Uses singular value decomposition (SVD) to fit a plane to a set of 3D points. More...
|
|
void | project_points_onto_plane (std::vector< Vector > &points, const Vector &plane_params, const Vector ¢roid, std::vector< Vector > &projected_points) |
| Projects 3D points onto the best-fit 3D plane. More...
|
|
void | translate_3d_plane_to_xy_plane (const std::vector< Vector > &points, const Vector &plane_params, std::vector< Vector > &translated_points, std::vector< Matrix > &transformMatrices) |
|
void | translate_xy_point_to_3d_plane (const Vector &point, const std::vector< Matrix > &transformMatrices, Vector &translated_point) |
|
void | fit_cylinder (const Polymesh &p, const Int_vector &rectMask, const std::vector< Right_Triangle_Pair > &rectangles, const std::vector< int > &cyl_indices, double cylAngle, const std::vector< Vector > &cylEdgePoints, Cylinder_section &cyl) |
| Determines the parameters of the cylinder formed by a set of faces in the polymesh. More...
|
|
void | find_cylinders_to_render_and_fit (char *faceFile, char *cylFile, const Polymesh &p, std::vector< Polymesh_Plane > &plane, std::vector< Cylinder_section > &cyl) |
|
void | find_cylinders_to_render (const Polymesh &p, std::vector< Polymesh_Plane > &plane) |
| Renders each set of faces that forms a cylinder a different color. More...
|
|
void | find_rectangles_to_render (const Polymesh &p, std::vector< Polymesh_Plane > &plane) |
| Renders each pair of faces that forms a rectangle a different color. More...
|
|
void | find_right_triangles_to_render (const Polymesh &p, std::vector< Polymesh_Plane > &plane) |
| Renders each face that is a right triangle in a different color. More...
|
|
void | find_adjacent_right_triangles_to_render (const Polymesh &p, std::vector< Polymesh_Plane > &plane) |
| Renders each face that is a right triangle and adjacent to another face that is also a right triangle in a different color. More...
|
|
std::ostream & | operator<< (std::ostream &out, const Line_segment &ls) |
|
void | rotate (Matrix &m, const Quaternion &r) |
|
void | translate (Matrix &m, const Vector &v_in) |
|
void | retrieve_offscreen_capabilities (bool *_has_gl, bool *_has_osmesa) |
| Checks what offscreen rendering capabilities are available on the machine. More...
|
|
bool | supports_pbuffers () |
| DEPRECATED Returns true if pbuffers are available. ONLY FOR DEBUG PURPOSES. More...
|
|
bool | supports_pixmaps () |
| DEPRECATED Returns true if pixelmaps are available. ONLY FOR DEBUG PURPOSES. More...
|
|
void | kjb_opengl_debug_display_buffer () |
| Pop up a window displaying the opengl color buffer. More...
|
|
int | min_bipartite_match (const Matrix &weights, Int_vector *assignment, Matrix::Value_type *cost) |
| solve a matching with minimum cost in a complete bipartite graph. More...
|
|
double | gsl_evaluate_Nd_boost_function (const gsl_vector *v, void *params) |
|
| Gsl_rng_template (Gsl_rng_mt19937, gsl_rng_mt19937, GSL_RNG_MT19937) |
|
| Gsl_rng_template (Gsl_rng_ranlxs0, gsl_rng_ranlxs0, GSL_RNG_RANLXS0) |
|
| Gsl_rng_template (Gsl_rng_ranlxs1, gsl_rng_ranlxs1, GSL_RNG_RANLXS1) |
|
| Gsl_rng_template (Gsl_rng_ranlxs2, gsl_rng_ranlxs2, GSL_RNG_RANLXS2) |
|
| Gsl_rng_template (Gsl_rng_ranlxd1, gsl_rng_ranlxd1, GSL_RNG_RANLXD1) |
|
| Gsl_rng_template (Gsl_rng_ranlxd2, gsl_rng_ranlxd2, GSL_RNG_RANLXD2) |
|
| Gsl_rng_template (Gsl_rng_cmrg, gsl_rng_cmrg, GSL_RNG_CMRG) |
|
| Gsl_rng_template (Gsl_rng_mrg, gsl_rng_mrg, GSL_RNG_MRG) |
|
| Gsl_rng_template (Gsl_rng_taus2, gsl_rng_taus2, GSL_RNG_TAUS2) |
|
| Gsl_rng_template (Gsl_rng_gfsr4, gsl_rng_gfsr4, GSL_RNG_GFSR4) |
|
void | report_gsl_failure_and_throw_kjb_error (int gsl_code, const char *file, unsigned line_no) |
| Implements the error-handling activities of Gsl_Etx_impl(). More...
|
|
void | gsl_iterate_EPE (int gsl_error_code) |
| On error, print a GSL iteration error message (like EPE) More...
|
|
void | Gsl_Etx_impl (int gsl_code, const char *file, unsigned line_no) |
| On GSL error of some kind, throw an KJB_error exception. More...
|
|
Gsl_Vector | operator* (double scalar, const Gsl_Vector &vector) |
| multiply scalar and vector, scalar written on the left side More...
|
|
Image | make_collage (Image const *const *input_images, int num_horizontal, int num_vertical) |
| wrapper for kjb_c::make_image_collage More...
|
|
Image | make_collage (Image const *input_img_array, int num_horizontal, int num_vertical) |
| also works for an array of Image objects More...
|
|
void | write_histograms (const std::vector< Color_histogram > &chs, const std::string &file_name) |
|
void | read_histograms (std::vector< Color_histogram > &chs, const std::string &file_name) |
|
Filter | gaussian_filter (double sigma, int size) |
| Create a Gaussian filter with given sigma and size. More...
|
|
Filter | laplacian_of_gaussian_filter (int size, double sigma) |
| Create a Laplacian of Gaussian filter. More...
|
|
Image | operator* (const Image &image, const Filter &kernel) |
| Convolve an image with a filter. More...
|
|
Image | gauss_sample_image (const Image &in, int resolution, double sigma) |
| this wraps C function kjb_c::gauss_sample_image (q.v.). More...
|
|
Matrix | operator* (const Matrix &in, const Filter &mask) |
|
Filter | gaussian_filter (double sigma) |
| Create a Gaussian filter with given sigma. More...
|
|
Vector | hsluma_space (const kjb_c::Pixel &p) |
| Compute the spatial coordinates of a pixel in HSY color space. More...
|
|
kjb_c::Pixel | get_pixel_from_hsluma_space (const Vector &hsy) |
| This clampfully transforms a point in HSY space to RGB. More...
|
|
int | get_pixel_from_hsluma_space (const Vector &hsy, kjb_c::Pixel *p) |
| This might transform a point in HSY space to RGB. More...
|
|
Matrix | to_grayscale_matrix (const Image &i) |
|
Image | scale_image (const Image &i, double factor) |
| Scale image size by factor, i.e., enlarge or shrink. More...
|
|
Image | rgb_matrices_to_image (const Matrix &red_channel, const Matrix &green_channel, const Matrix &blue_channel) |
| Contruct an image from three matrices representing red, green, blue channels. More...
|
|
Image | get_inverted (const Image &) |
|
Image | operator* (const Image &op1, double op2) |
| Scale an image in channel space, yielding a new image. More...
|
|
Image | operator/ (const Image &op1, double op2) |
| Scale an image in channel space, yielding a new image. More...
|
|
Image | operator+ (const Image &op1, const Image &op2) |
| Add two images. More...
|
|
Image | operator- (const Image &im1, const Image &im2) |
| Subtract two images. More...
|
|
void | enable_transparency (Image &i) |
| set Image flag, to indicate that the 'alpha' channel is meaningful. More...
|
|
void | disable_transparency (Image &i) |
| clear Image flag, to indicate that the 'alpha' channel is not meaningful. More...
|
|
bool | is_transparency_enabled (const Image &i) |
| test the Image flag, returning true if the 'alpha' channel is meaningful. More...
|
|
Image | matrix_to_max_contrast_8bit_bw_image (const kjb::Matrix &m) |
| convert a matrix to a black-and-white image, with enhanced contrast. More...
|
|
Image | matrix_to_color_image (const kjb::Matrix &m, const kjb::Colormap &map="jet") |
| Converts a matrix to a high-contrast color image, mapping values to colors using a kjb::Colormap. Equivalent to Matlab's imagesc() function. More...
|
|
Image | imagesc (const kjb::Matrix &data, const kjb::Colormap &map="jet") |
| Ported version of Matlab's "imagesc()" function; alias of matrix_to_color_image. More...
|
|
std::string | pixel_as_hex_triplet_string (const kjb_c::Pixel *p) |
| express color as HTML-style hex triplet, e.g., "#FFCC00," of pointer More...
|
|
PixelRGBA | operator* (const PixelRGBA &p, const PixelRGBA &q) |
| Multiply two pixels together. More...
|
|
PixelRGBA | operator* (const PixelRGBA &p, double k) |
| Scale a pixel by a floating point value on the right. More...
|
|
PixelRGBA | operator* (double k, const PixelRGBA &p) |
| Scale a pixel by a floating point value on the left. More...
|
|
kjb_c::Pixel | abs (const kjb_c::Pixel &p) |
| Take the channel-wise absolute value of a kjb_c::Pixel. More...
|
|
std::string | pixel_as_hex_triplet_string (const kjb_c::Pixel &p) |
| express color as HTML-style hex triplet, e.g., "#FFCC00," reference More...
|
|
template<class Iterator , class Real > |
std::iterator_traits< Iterator >
::value_type | lerp (Iterator begin, Iterator end, Real x) |
|
template<class IIterator , class OIterator , class QueryType > |
std::iterator_traits
< OIterator >::value_type | lerp (IIterator ibegin, IIterator iend, OIterator obegin, const QueryType &query_point) |
|
template<class IIterator , class OIterator , class I2Iterator , class O2Iterator > |
void | ordered_lerp (IIterator ibegin, IIterator iend, OIterator obegin, I2Iterator i2begin, I2Iterator i2end, O2Iterator o2begin) |
|
template<class Key_type , class Value_type , class Query_type > |
Value_type | lerp (const std::map< Key_type, Value_type > &piecewise_function, const Query_type &query_point) |
|
template<class ForwardIterator > |
void | linspace (double min, double max, size_t n, ForwardIterator begin, bool endpoint=true) |
|
template<class ForwardIterator > |
void | logspace (double min, double max, size_t n, ForwardIterator begin) |
|
template<class InType , class OutIterator , class UnaryOperator > |
void | linspace (const InType &lower, const InType &upper, size_t N, const OutIterator &out_begin, const UnaryOperator &f) |
|
template<class InType , class OutIterator > |
void | linspace (InType min, InType max, size_t n, OutIterator begin) |
|
template<int NUM_BYTES> |
void | swap_bytes_dispatch (void *) |
| Swap the byte-order of a value. More...
|
|
template<> |
void | swap_bytes_dispatch< 2 > (void *value) |
| swap the byte order of a 16-bit value (do not call directly). More...
|
|
template<> |
void | swap_bytes_dispatch< 4 > (void *value) |
| swap the byte order of a 32-bit value (do not call directly). More...
|
|
template<> |
void | swap_bytes_dispatch< 8 > (void *value) |
| swap the byte order of a 64-bit value (do not call directly). More...
|
|
template<class T > |
void | swap_bytes (T *value) |
|
template<class T > |
void | swap_bytes (T &value) |
|
template<class T > |
void | swap_array_bytes (T *array, size_t N) |
|
template<typename T > |
T & | move (T &v) |
|
template<typename T > |
const T & | move (const T &v) |
|
template<class Indexable > |
Indexable | ew_multiply (const Indexable &I, const Indexable &J) |
| Multiply the elements of two Indexable things. Must be indexed via operator() and assignable. More...
|
|
template<class Indexable > |
void | ew_abs_ow (Indexable &I) |
| Element-wise abosulte value. More...
|
|
template<class Indexable > |
void | ew_square_ow (Indexable &I) |
| Square the elements of an indexable class in place. I must be indexed via operator(). More...
|
|
template<class Indexable > |
Indexable | ew_square (const Indexable &I) |
| Square the elements of an indexable class; the result is returned. I must be indexed via operator(). More...
|
|
template<class Indexable > |
void | ew_sqrt_ow (Indexable &I) |
| Take the square root of the elements of an indexable class in place. I must be indexed via operator(). More...
|
|
template<class Indexable > |
Indexable | ew_sqrt (const Indexable &I) |
| Take the square root the elements of an indexable class; the result is returned. I must be indexed via operator(). More...
|
|
std::string | kjb_get_error () |
| similar to kjb_c::kjb_get_error(), but this returns std::string. More...
|
|
void | throw_kjb_error (const char *msg, const char *file, unsigned line) |
|
std::vector< std::string > | file_names_from_format (const std::string &name_format, size_t first=1, size_t num_files=std::numeric_limits< size_t >::max()) |
| Expands the format into a set of (existing) file names. More...
|
|
std::vector< std::string > | dir_names_from_format (const std::string &name_format, size_t first=1) |
| Expands the format into a set of (existing) file names. More...
|
|
std::vector< std::string > | strings_from_format (const std::string &str_format, size_t num_strings, size_t first=1) |
| Expands the format into a set strings. More...
|
|
std::string | realpath (const std::string &path) |
| return a canonicalized path, by wrapping kjb_c::kjb_realpath(). More...
|
|
std::string | get_extension (const std::string &fname) |
|
void | swap (Index_range &r1, Index_range &r2) |
|
std::istream & | operator>> (std::istream &ist, Index_range &ir) |
|
Int_matrix | create_row_matrix (const Int_matrix::Vec_type &) |
| Construct a one-row matrix by deep-copying a vector. More...
|
|
Int_matrix | create_diagonal_matrix (const Int_matrix::Vec_type &diagnoal) |
| Construct a one-row matrix by deep-copying a vector. More...
|
|
Int_matrix | create_column_matrix (const Int_matrix::Vec_type &) |
| Construct a one-column matrix by deep-copying a vector. More...
|
|
bool | operator== (const Int_matrix &op1, const Int_matrix::Impl_type &op2) |
| Test for exact equality between two matrices. More...
|
|
std::ostream & | operator<< (std::ostream &out, const Int_matrix &m) |
| Display matrix contents in an ASCII format. More...
|
|
Int_matrix | create_identity_int_matrix (int rank) |
| Construct an identity matrix of specified rank. More...
|
|
Int_matrix | create_zero_int_matrix (int rows, int columns) |
| Construct a zero matrix of specified size. More...
|
|
Int_matrix | create_zero_int_matrix (int rows) |
| Construct a square zero matrix of specified size. More...
|
|
Int_matrix | operator* (const Int_matrix &op1, const Int_matrix &op2) |
| Compute product of this matrix (on the left) and another. More...
|
|
Int_matrix | operator* (const Int_matrix &op1, Int_matrix::Value_type op2) |
| Compute the product of this matrix and a scalar, yielding a new matrix. More...
|
|
Int_matrix | operator* (Int_matrix::Value_type op1, const Int_matrix &op2) |
| Compute product of scalar and matrix, returning a new matrix. More...
|
|
Int_matrix | operator/ (const Int_matrix &op1, Int_matrix::Value_type op2) |
| Compute new matrix equal to lefthand matrix with each entry divided by a scalar value. More...
|
|
Int_matrix | operator+ (const Int_matrix &op1, const Int_matrix &op2) |
| Compute matrix addition, returning a new matrix. More...
|
|
Int_matrix | operator- (const Int_matrix &op1, const Int_matrix &op2) |
| Compute matrix difference, returning a new matrix. More...
|
|
Int_matrix | operator- (const Int_matrix &op1) |
| Return the additive inverse of this matrix. More...
|
|
bool | operator== (const Int_matrix &op1, const Int_matrix &op2) |
| Test for exact equality between two matrices. More...
|
|
bool | operator!= (const Int_matrix &op1, const Int_matrix::Impl_type &op2) |
| Test for any difference between two matrices. More...
|
|
bool | operator!= (const Int_matrix &op1, const Int_matrix &op2) |
| Test for any difference between two matrices. More...
|
|
bool | operator== (const Int_matrix::Impl_type &op1, const Int_matrix &op2) |
| Test for exact equality between two matrices. More...
|
|
bool | operator!= (const Int_matrix::Impl_type &op1, const Int_matrix &op2) |
| Test for any difference between two matrices. More...
|
|
Int_matrix | matrix_transpose (const Int_matrix &op1) |
| Test for any difference between two matrices. More...
|
|
Int_matrix | abs (const Int_matrix &mat) |
| Compute the elementwise absolute value of a matrix. More...
|
|
Int_matrix::Value_type | max_abs_difference (const Int_matrix &op1, const Int_matrix &op2) |
| Find the largest difference between two matrices. More...
|
|
Int_matrix::Value_type | min (const Int_matrix &mat) |
| Return the minimum value in this matrix. More...
|
|
Int_matrix::Value_type | max (const Int_matrix &mat) |
| Return the maximum value in this matrix. More...
|
|
Int_vector | operator* (const Int_vector &op1, const Int_matrix &op2) |
| Return product of this (as a row-vec) times matrix on the right. More...
|
|
Int_vector | operator* (const Int_matrix &op1, const Int_vector &op2) |
| Compute product of this matrix (on the left) and a column vector (on the right). More...
|
|
bool | operator== (const Int_vector &op1, const Int_vector::Impl_type &op2) |
| Test for exact equality between vectors. More...
|
|
bool | operator< (const Int_vector &op1, const Int_vector &op2) |
| Test weak lexicographic ordering between vectors. More...
|
|
Int_vector | cross (const Int_vector &op1, const Int_vector &op2) |
| Compute cross product of op1 and op2. More...
|
|
std::ostream & | operator<< (std::ostream &out, const Int_vector &m) |
| Display vector contents in an ASCII format. More...
|
|
Int_vector | create_random_int_vector (int length) |
| Construct a vector with random contents. More...
|
|
Int_vector | create_vector_from_vector_section (const Int_vector &iv, int begin, int length) |
| Construct a vector by deep-copying a section of another vector. More...
|
|
Int_vector | operator* (const Int_vector &op1, Int_vector::Value_type op2) |
| Scalar multiply, resulting in a new vector, e.g., v * 6. More...
|
|
Int_vector | operator* (Int_vector::Value_type op1, const Int_vector &op2) |
| Scalar multiplication of a vector. More...
|
|
Int_vector | operator/ (const Int_vector &op1, Int_vector::Value_type op2) |
| Scalar integer division, yielding a new vector. More...
|
|
Int_vector | operator+ (const Int_vector &op1, const Int_vector &op2) |
| Add two vectors, creating a new vector, e.g., v + w. More...
|
|
Int_vector | operator- (const Int_vector &op1, const Int_vector &op2) |
| Subtract one vector from another, resulting in a new vector, e.g., v - w. More...
|
|
Int_vector | operator- (const Int_vector &op1) |
| Return the negation of a vector, as in (-v), resulting in a new vector. More...
|
|
bool | operator== (const Int_vector::Impl_type &op1, const Int_vector &op2) |
| Test for exact equality between vectors. More...
|
|
bool | operator!= (const Int_vector &op1, const Int_vector::Impl_type &op2) |
| Test for (any) inequality between vectors. More...
|
|
bool | operator!= (const Int_vector::Impl_type &op1, const Int_vector &op2) |
| Test for inequality between vectors. More...
|
|
bool | operator== (const Int_vector &op1, const Int_vector &op2) |
| Test for exact equality between vectors. More...
|
|
bool | operator!= (const Int_vector &op1, const Int_vector &op2) |
| Test for (any) inequality between vectors. More...
|
|
bool | operator<= (const Int_vector &op1, const Int_vector &op2) |
| Test lexicographic ordering between vectors. More...
|
|
bool | operator> (const Int_vector &op1, const Int_vector &op2) |
| Test lexicographic ordering between vectors. More...
|
|
bool | operator>= (const Int_vector &op1, const Int_vector &op2) |
| Test lexicographic ordering between vectors. More...
|
|
Int_vector::Value_type | max_abs_difference (const Int_vector &op1, const Int_vector &op2) |
| Return the maximum of the absolute values of the elementwise difference between two vectors, provided they have the same length. More...
|
|
long int | dot (const Int_vector &op1, const Int_vector &op2) |
| Returns dot product of this and op2. More...
|
|
double | norm2 (const Int_vector &op1) |
| Compute l2-norm of vector. More...
|
|
double | vector_distance (const Int_vector &op1, const Int_vector &op2) |
| Compute the Euclidian distance between two vectors. More...
|
|
double | vector_distance_squared (const Int_vector &op1, const Int_vector &op2) |
| Compute the square of the Euclidian distance between two vectors. More...
|
|
template<class const_iterator > |
const_circular_iterator
< const_iterator > | make_const_circular_iterator (const_iterator begin, const_iterator end) |
|
template<class Container > |
const_circular_iterator
< typename
Container::const_iterator > | make_const_circular_iterator (const Container &container) |
|
template<class iterator > |
circular_iterator< iterator > | make_circular_iterator (iterator begin, iterator end) |
|
template<class Container > |
circular_iterator< typename
Container::iterator > | make_circular_iterator (Container &container) |
|
template<class Archive , class KJB_readable_writable > |
void | kjb_serialize_default (Archive &ar, KJB_readable_writable &obj, const unsigned int) |
| Implements boost serialization for any object that implements the KjbReadableWritable concept. More...
|
|
template<class Archive , class KJB_readable_writable > |
void | kjb_serialize (Archive &ar, KJB_readable_writable &obj, const unsigned int version) |
|
template<class Serializable > |
void | load (Serializable &, const std::string &) |
|
template<class SerializableOutputIterator > |
void | load_many (SerializableOutputIterator it, const std::string &fmt_str, const Index_range &indices) |
|
template<class SerializableOutputIterator > |
void | load_many (SerializableOutputIterator it, const std::string &fmt_str, size_t num_files, size_t first_index=0, size_t modulo=0) |
|
template<class Value_type , class SerializablePtrOutputIterator > |
void | load_many_dynamic_dispatch (Value_type *, SerializablePtrOutputIterator it, const std::string &fmt_str, const Index_range &indices) |
|
template<class Value_type , class SerializablePtrOutputIterator > |
void | load_many_dynamic_dispatch (typename boost::shared_ptr< Value_type >, SerializablePtrOutputIterator it, const std::string &fmt_str, const Index_range &indices) |
|
template<class SerializablePtrOutputIterator > |
void | load_many_to_ptr (SerializablePtrOutputIterator it, const std::string &fmt_str, size_t num_files, size_t first_index=0, size_t modulo=1) |
|
template<class SerializablePtrOutputIterator , class Index_range_type > |
boost::enable_if
< boost::is_convertible
< Index_range_type,
Index_range >, void >::type | load_many_to_ptr (SerializablePtrOutputIterator it, const std::string &fmt_str, const Index_range_type &indices) |
|
template<class Serializable > |
void | save (const Serializable &, const std::string &) |
|
int | getline (FILE *fp, std::string *line, char EOL= '\n') |
| Like C's fgets but with std::string, or C++'s getline but with FILE*. More...
|
|
void | alert_untested (int line, const char *file) |
|
template<class C > |
size_t | length (const C &cner) |
| Counts the total number of elements in a 2D STL-style container. More...
|
|
std::map< int, Region_vector > | get_regions_from_mask (const Int_matrix &mask, int region_length) |
| Later... More...
|
|
void | prepare_model_map (Int_matrix &model_map, const Polymesh &p) |
| Prepares a model map from a polymesh. More...
|
|
void | prepare_model_edges (std::vector< Model_edge > &edges, const Polymesh &p, const Base_gl_interface &eye) |
| Prepares a set of model edges from a polymesh. More...
|
|
void | prepare_model_map (Int_matrix &model_map, const std::vector< const Polymesh * > &ps) |
| Prepares a model map from a vector of polymeshes. More...
|
|
void | prepare_model_edges (std::vector< Model_edge > &edges, const std::vector< const Polymesh * > &ps, const Base_gl_interface &eye) |
| Prepares a set of model edges from a vector of polymeshes. More...
|
|
void | prepare_model_edges (std::vector< Model_edge > &edges, const std::vector< const Polymesh * > &ps, const Base_gl_interface &eye, const Matrix &M, double width, double height, const std::vector< bool > &flagged) |
|
void | prepare_model_edges (std::vector< Model_edge > &edges, const std::vector< const Polymesh * > &ps, const Base_gl_interface &eye, const Matrix &M, double width, double height) |
|
void | prepare_model_edges (std::vector< Model_edge > &edges, const Polymesh &p, const Base_gl_interface &eye, const Matrix &M, double width, double height, bool flagged) |
|
void | prepare_model_edges (std::vector< Model_edge > &edges, const Polymesh &p, const Base_gl_interface &eye, const Matrix &M, double width, double height) |
|
void | prepare_solid_model_map (Int_matrix &model_map, const std::vector< const Polymesh * > &ps) |
| Prepares a model map from a polymesh. More...
|
|
void | prepare_solid_model_map (Int_matrix &model_map, const Polymesh &p) |
| Prepares a model map from a vector of polymeshes. More...
|
|
void | draw_model_edges (kjb::Image &img, const std::vector< Model_edge > &edges) |
|
void | prepare_rendered_model_edges (std::vector< Model_edge > &edges, const Int_matrix &model_map) |
| Prepares a set of rendered model edges from the model_map. More...
|
|
bool | operator== (const Polybezier_curve &op1, const Polybezier_curve &op2) |
|
Polybezier_curve | subdivide (const Polybezier_curve &c, double u) |
|
template<class Assignable_array_type > |
double | reduce (const Assignable_array_type &array, size_t length) |
|
template<class Array_type > |
double | reduce_in_place (Array_type &array, size_t length) |
|
bool | work_buffer_is_unique (const Fftw_convolution_2d::Work_buffer &b) |
| test whether a Work_buffer object is the last handle to its memory More...
|
|
void | flip_matrix_ud (Matrix &m) |
| deprecated synonym for Matrix::ow_vertical_flip More...
|
|
void | flip_matrix_lr (Matrix &m) |
| deprecated synonym for Matrix::ow_horizontal_flip More...
|
|
Matrix | derivative_matrix (int degree, int N) |
|
kjb::Matrix | create_integral_matrix (const std::vector< double > &deltas) |
|
kjb::Matrix | create_integral_matrix (size_t N) |
|
Matrix | create_derivative_matrix (int N, int degree=1) |
|
Matrix_stl_view | get_matrix_stl_view (kjb::Matrix &mat) |
|
template<class Iterator > |
Matrix_traits< typename
std::iterator_traits< Iterator >
::value_type::value_type >
::Matrix_type | create_matrix_from_rows (Iterator begin, Iterator end) |
| Build a matrix from a container of row vectors. More...
|
|
template<class Iterator > |
Matrix_traits< typename
std::iterator_traits< Iterator >
::value_type::value_type >
::Matrix_type | create_matrix_from_columns (const Iterator &begin, const Iterator &end) |
| Build a matrix from a container of column vectors. More...
|
|
template<class Container_ > |
Matrix_traits< typename
Container_::value_type::value_type >
::Matrix_type | create_matrix_from_columns (const Container_ &cols) |
| Build a matrix from a container of column vectors. More...
|
|
template<class Container_ > |
Matrix_traits< typename
Container_::value_type::value_type >
::Matrix_type | create_matrix_from_rows (const Container_ &rows) |
| Build a matrix from a container of row vectors. More...
|
|
Matrix | create_row_matrix (const Vector &) |
| Construct a one-row matrix by deep-copying a vector. More...
|
|
Matrix | create_column_matrix (const Vector &) |
| Construct a one-column matrix by deep-copying a vector. More...
|
|
Matrix | create_gauss_random_matrix (int num_rows, int num_cols) |
|
Matrix | create_diagonal_matrix (const Matrix::Vec_type &diagonal) |
| Construct a diagonal matrix from the specified vector. More...
|
|
Matrix | create_diagonal_matrix (const Matrix::Vec_type &diagonal, size_t n) |
| Construct a "repeating" diagonal matrix from the specified vector. More...
|
|
bool | operator== (const Matrix &op1, const Matrix::Impl_type &op2) |
| Test for exact equality between two matrices. More...
|
|
Matrix | matrix_inverse (const Matrix &op1) |
| Invert this matrix. More...
|
|
Matrix::Value_type | max_abs_difference (const Matrix &op1, const Matrix &op2) |
| Find the largest difference between two matrices. More...
|
|
std::ostream & | operator<< (std::ostream &out, const Matrix &m) |
| Display matrix contents in an ASCII format. More...
|
|
double | det (const Matrix &mat) |
|
Matrix::Vec_type | sum_matrix_cols (const Matrix &) |
| Compute the matrix's sum across columns (a.k.a. row-wise sum) More...
|
|
Matrix::Vec_type | sum_matrix_rows (const Matrix &) |
| Compute the matrix's sum down (a.k.a. columnar sum), like MATLAB. More...
|
|
Int_matrix | create_int_matrix_from_matrix_ceil (const Matrix &) |
| Construct a matrix with elements equal to the ceiling, ceil() of a given floating-point Matrix. More...
|
|
Int_matrix | create_int_matrix_from_matrix_floor (const Matrix &) |
| Construct an Int_matrix with elements equal to the floor() of a given floating-point Matrix. More...
|
|
Int_matrix | floor (const Matrix &m) |
|
Matrix | logical_or (Matrix a, Matrix b) |
| returns a matrix with 1s and 0s. 1 if either has a non zero value in that position, 0 otherwise More...
|
|
Matrix | logical_and (Matrix a, Matrix b) |
| returns a matrix with 1s and 0s. 1 if both matricies have a non zero value in that position, 0 otherwise More...
|
|
Matrix | logical_not (Matrix a) |
| returns a matrix with 1s and 0s. 1 if the value is 0, and 0 otherwise. More...
|
|
Matrix | tile_matrix (Matrix trixy, unsigned m, unsigned n) |
| Construct a tiling of the given matrix. More...
|
|
Matrix | tile_matrix (int tehnum, unsigned m, unsigned n) |
| Construct a tiling of the given matrix, in this case, a matrix of the given number with the specified size. More...
|
|
Matrix | create_identity_matrix (int rank) |
| Construct an identity matrix of specified rank. More...
|
|
Matrix | create_identity_matrix (int num_rows, int num_cols) |
| Construct a rank-deficient identity matrix with the specified number of rows and columns. More...
|
|
Matrix | create_zero_matrix (int rows, int columns) |
| Construct a zero matrix of specified size. More...
|
|
Matrix | create_zero_matrix (int size) |
| Construct a square zero matrix of specified size. More...
|
|
Matrix | create_random_matrix (int num_rows, int num_cols) |
|
Matrix | create_diagonal_matrix (int size, Matrix::Value_type a) |
| Construct a diagonal matrix of the specified size, where the diagonal elements are set to the given value. More...
|
|
Matrix | operator* (const Matrix &op1, const Matrix &op2) |
| Compute product of this matrix (on the left) and another. More...
|
|
Matrix | operator* (const Matrix &op1, Matrix::Value_type op2) |
| Compute the product of this matrix and a scalar, yielding a new matrix. More...
|
|
Matrix | operator* (Matrix::Value_type op1, const Matrix &op2) |
| Compute product of scalar and matrix, returning a new matrix. More...
|
|
Matrix | operator/ (const Matrix &op1, Matrix::Value_type op2) |
| Compute new matrix equal to lefthand matrix with each entry divided by a scalar value. More...
|
|
Matrix | operator+ (const Matrix &op1, const Matrix &op2) |
| Compute matrix addition, returning a new matrix. More...
|
|
Matrix | operator+ (const Matrix &op1, double op2) |
| Compute matrix addition, returning a new matrix. More...
|
|
Matrix | operator- (const Matrix &op1, const Matrix &op2) |
| Compute matrix difference, returning a new matrix. More...
|
|
Matrix | shift_rows_by (const Matrix &op1, const Vector &op2) |
| Add the same vector to each row, return a new Matrix. More...
|
|
Matrix | shift_columns_by (const Matrix &op1, const Vector &op2) |
| Add the same vector to each column, return a new Matrix. More...
|
|
Matrix | ew_multiply_rows_by (const Matrix &op1, const Vector &op2) |
| Elementwise multiply each row of op1 by a op2, return a new Matrix. More...
|
|
Matrix | ew_multiply (const Matrix &op1, const Matrix &op2) |
| Elementwise product of two matrices. More...
|
|
Matrix | operator- (const Matrix &op1, double op2) |
| Compute matrix difference, returning a new matrix. More...
|
|
Matrix | operator- (const Matrix &op1) |
| Return the additive inverse of this matrix. More...
|
|
bool | operator== (const Matrix &op1, const Matrix &op2) |
| Test for exact equality between two matrices. More...
|
|
bool | operator!= (const Matrix &op1, const Matrix::Impl_type &op2) |
| Test for any difference between two matrices. More...
|
|
bool | operator!= (const Matrix &op1, const Matrix &op2) |
| Test for any difference between two matrices. More...
|
|
bool | operator== (const Matrix::Impl_type &op1, const Matrix &op2) |
| Test for exact equality between two matrices. More...
|
|
bool | operator!= (const Matrix::Impl_type &op1, const Matrix &op2) |
| Test for any difference between two matrices. More...
|
|
bool | operator< (const Matrix &op1, const Matrix &op2) |
| Returns true if a is lexicographically less-than b. More...
|
|
Matrix | matrix_transpose (const Matrix &op1) |
| Transpose this matrix. More...
|
|
Matrix | abs (const Matrix &mat) |
| Compute the elementwise absolute value of a matrix. More...
|
|
double | sum_squared_elements (const Matrix &mat) |
| Compute the sum of squared elements. More...
|
|
Matrix::Value_type | min (const Matrix &mat) |
| Return the minimum value in this matrix. More...
|
|
Matrix::Value_type | max (const Matrix &mat) |
| Return the maximum value in this matrix. More...
|
|
Matrix | outer_product (const Vector &v1, const Vector &v2) |
|
void | swap (Matrix &m1, Matrix &m2) |
| Non-member swap function. More...
|
|
| FREE_FUNCTION_LIST (2, 3, true) |
|
| FREE_FUNCTION_LIST (2, 3, false) |
|
| FREE_FUNCTION_LIST_NO_TRANSPOSE (2, 3) |
|
| FREE_FUNCTION_LIST (3, 4, true) |
|
| FREE_FUNCTION_LIST (3, 4, false) |
|
| FREE_FUNCTION_LIST_NO_TRANSPOSE (3, 4) |
|
| FREE_FUNCTION_LIST_3DIM (3, 3, 4) |
|
| FREE_FUNCTION_LIST_3DIM (3, 4, 4) |
|
| FREE_FUNCTION_LIST_3DIM (2, 2, 3) |
|
| FREE_FUNCTION_LIST_3DIM (2, 3, 3) |
|
double | det (const Matrix_d< 1, 1 > &m) |
|
double | det (const Matrix_d< 2, 2 > &m) |
|
double | det (const Matrix_d< 3, 3 > &m) |
|
template<class Matrix_1 , class Matrix_2 > |
Matrix | matrix_multiply_dynamic_dispatch_ (const Matrix_1 &m1, const Matrix_2 &m2) |
| don't call me directly More...
|
|
void | kjb_serialize (boost::archive::text_iarchive &ar, Matrix &obj, const unsigned int version) |
|
void | kjb_serialize (boost::archive::text_oarchive &ar, Matrix &obj, const unsigned int version) |
|
void | kjb_serialize (boost::archive::text_iarchive &ar, Vector &obj, const unsigned int version) |
|
void | kjb_serialize (boost::archive::text_oarchive &ar, Vector &obj, const unsigned int version) |
|
double | log_binomial_coefficient (size_t n, size_t k) |
|
Vector | create_gauss_random_vector (int length) |
| Construct a vector with values drawn from a standard Gaussian distribution (mean 0, variance 1);. More...
|
|
Vector | operator* (const Vector &op1, const Matrix &op2) |
| Return product of op1 (as a row-vec) times matrix on the right. More...
|
|
Vector | operator* (const Matrix &op1, const Vector &op2) |
| Compute product of this matrix (on the left) and a column vector (on the right). More...
|
|
bool | operator== (const Vector &op1, const Vector::Impl_type &op2) |
| Test for exact equality between vectors. More...
|
|
bool | operator< (const Vector &op1, const Vector &op2) |
| Test weak lexicographic ordering between vectors. More...
|
|
Vector | cross (const Vector &op1, const Vector &op2) |
| Compute cross product of op1 and op2. More...
|
|
std::ostream & | operator<< (std::ostream &out, const Vector &m) |
| Display vector contents in an ASCII format. More...
|
|
std::ostream & | stream_write_vector (std::ostream &ost, const Vector &m) |
| Write vector to an output stream so it can be read with read_vector. More...
|
|
std::istream & | stream_read_vector (std::istream &ist, Vector &m) |
| Read vector from an input stream. More...
|
|
std::vector< Vector > | get_transpose (const std::vector< Vector > &m) |
| Treat a std::vector of kjb::Vectors as a matrix and get its 'transpose'. More...
|
|
Int_vector | floor (const Vector &realv) |
| Build an Int_vector that is the element-wise floor of a real Vector. More...
|
|
kjb::Vector | create_uniformly_spaced_vector (double a, double b, unsigned n) |
|
Vector | create_random_vector (int length) |
| Construct a vector with values drawn from a uniform distribution over [0,1]. More...
|
|
Vector | create_zero_vector (int length) |
| Construct a vector containing zeroes. More...
|
|
Vector | create_vector_from_vector_section (const Vector &iv, int begin, int length) |
| Construct a vector by deep-copying a section of another vector. More...
|
|
Vector | operator* (const Vector &op1, Vector::Value_type op2) |
| Scalar multiply, resulting in a new vector, e.g., v * 6. More...
|
|
Vector | operator* (Vector::Value_type op1, const Vector &op2) |
| Scalar multiplication of a vector. More...
|
|
Vector | operator/ (const Vector &op1, Vector::Value_type op2) |
| Scalar division, yielding a new vector. More...
|
|
Vector | operator+ (const Vector &op1, const Vector &op2) |
| Add two vectors, creating a new vector, e.g., v + w. More...
|
|
Vector | operator- (const Vector &op1, const Vector &op2) |
| Subtract one vector from another, resulting in a new vector, e.g., v - w. More...
|
|
Vector | operator- (const Vector &op1) |
| Return the negation of a vector, as in (-v), resulting in a new vector. More...
|
|
bool | operator== (const Vector::Impl_type &op1, const Vector &op2) |
| Test for exact equality between vectors. More...
|
|
bool | operator!= (const Vector &op1, const Vector::Impl_type &op2) |
| Test for (any) inequality between vectors. More...
|
|
bool | operator!= (const Vector::Impl_type &op1, const Vector &op2) |
| Test for inequality between vectors. More...
|
|
bool | operator== (const Vector &op1, const Vector &op2) |
| Test for exact equality between vectors. More...
|
|
bool | operator!= (const Vector &op1, const Vector &op2) |
| Test for (any) inequality between vectors. More...
|
|
bool | operator<= (const Vector &op1, const Vector &op2) |
| Test lexicographic ordering between vectors. More...
|
|
bool | operator> (const Vector &op1, const Vector &op2) |
| Test lexicographic ordering between vectors. More...
|
|
bool | operator>= (const Vector &op1, const Vector &op2) |
| Test lexicographic ordering between vectors. More...
|
|
Vector::Value_type | max_abs_difference (const Vector &op1, const Vector &op2) |
| Return the maximum of the absolute values of the elementwise difference between two vectors, provided they have the same length. More...
|
|
Vector::Value_type | dot (const Vector &op1, const Vector &op2) |
| Returns dot product of op1 and op2. More...
|
|
double | norm1 (const Vector &op) |
| Compute L1-norm of vector. More...
|
|
double | norm2 (const Vector &op1) |
| Compute L2-norm of vector. More...
|
|
double | vector_distance (const Vector &op1, const Vector &op2) |
| Compute the Euclidian distance between two vectors. More...
|
|
double | vector_distance_squared (const Vector &op1, const Vector &op2) |
| Compute the square of the Euclidian distance between two vectors. More...
|
|
Vector::Value_type | max (const Vector &vec) |
| Return the maximum element in the vector. More...
|
|
Vector::Value_type | min (const Vector &vec) |
| Return the minimum element in the vector. More...
|
|
Vector | cat_vectors (const Vector &first, const Vector &second) |
| Concatenate two vectors. More...
|
|
template<class InputIterator > |
Vector | cat_vectors (InputIterator first, InputIterator last) |
| Concatenate the vectors in the given sequence of vectors. More...
|
|
template<class OutputIterator > |
OutputIterator | separate_vector (const Vector &vec, int sz, OutputIterator result) |
| Separate the given vector into vectors of the give size; the vectors will be output into the output iterator. More...
|
|
void | swap (Vector &v1, Vector &v2) |
| Non-member swap. More...
|
|
Vector | multiply_matrix_and_vector_d_dispatch_ (const Matrix &m, const double *v, size_t size) |
| dispatch for operator*(Matrix, Vector_d). This deals with a circular dependency between matrix.h and vector_d.h by moving template code into a cpp file. DO NOT CALL DIRECTLY! More...
|
|
Vector2 | make_vector2 (const Vector &v) |
|
Vector3 | make_vector3 (const Vector &v) |
|
Vector4 | make_vector4 (const Vector &v) |
|
template<std::size_t D> |
Vector | operator* (const Matrix &m, const Vector_d< D > v) |
| multiply by static vector More...
|
|
template<std::size_t D> |
Vector_d< D > | operator- (const Vector_d< D > &first, const Vector_d< D > &second) |
|
template<std::size_t D> |
Vector_d< D > | operator- (const Vector_d< D > &first, double second) |
|
template<std::size_t D> |
Vector_d< D > | operator- (double first, const Vector_d< D > &second) |
|
template<std::size_t D> |
Vector_d< D > | operator- (const Vector_d< D > &first) |
|
template<std::size_t D> |
Vector_d< D > | operator+ (const Vector_d< D > &first, const Vector_d< D > &second) |
|
template<std::size_t D> |
Vector_d< D > | operator+ (const Vector_d< D > &first, double second) |
|
template<std::size_t D> |
Vector_d< D > | operator+ (double first, const Vector_d< D > &second) |
|
template<std::size_t D> |
Vector_d< D > | operator* (const Vector_d< D > &v, double s) |
|
template<std::size_t D> |
Vector_d< D > | operator* (double s, const Vector_d< D > &v) |
|
template<std::size_t D> |
Vector_d< D > | operator/ (const Vector_d< D > &v, double s) |
|
template<std::size_t N> |
void | swap (Vector_d< N > &first, Vector_d< N > &second) |
|
template<std::size_t N> |
bool | operator== (const Vector_d< N > &first, const Vector_d< N > &second) |
|
template<std::size_t N> |
bool | operator!= (const Vector_d< N > &first, const Vector_d< N > &second) |
|
template<std::size_t N> |
bool | operator< (const Vector_d< N > &first, const Vector_d< N > &second) |
|
template<std::size_t N> |
bool | operator> (const Vector_d< N > &first, const Vector_d< N > &second) |
|
template<std::size_t N> |
bool | operator<= (const Vector_d< N > &first, const Vector_d< N > &second) |
|
template<std::size_t N> |
bool | operator>= (const Vector_d< N > &first, const Vector_d< N > &second) |
|
template<size_t D> |
double | norm1 (const kjb::Vector_d< D > &v) |
|
template<size_t D> |
double | norm2 (const kjb::Vector_d< D > &v) |
|
template<size_t D> |
Vector_d< D > | create_random_vector () |
|
template<size_t D> |
Vector_d< D > | create_gauss_random_vector () |
|
Vector2 | create_random_vector2 () |
|
Vector3 | create_random_vector3 () |
|
Vector4 | create_random_vector4 () |
|
template<size_t D> |
Vector_d< D > | create_unit_vector (size_t d) |
|
template<std::size_t D> |
std::ostream & | operator<< (std::ostream &out, const Vector_d< D > &v) |
|
template<std::size_t D> |
std::istream & | operator>> (std::istream &ist, Vector_d< D > &v) |
|
template<std::size_t D> |
double | dot (const Vector_d< D > &op1, const Vector_d< D > &op2) |
|
template<std::size_t D> |
double | vector_distance (const Vector_d< D > &op1, const Vector_d< D > &op2) |
| Compute the Euclidian distance between two vectors. More...
|
|
template<std::size_t D> |
double | vector_distance_squared (const Vector_d< D > &op1, const Vector_d< D > &op2) |
| Compute the Euclidian distance between two vectors. More...
|
|
Vector3 | cross (const Vector3 &op1, const Vector3 &op2) |
|
Matrix | cholesky_decomposition (const Matrix &M) |
|
double | log_det (const Matrix &M) |
|
void | diagonalize (const Matrix &M, Matrix &eig_vectors, Vector &eig_values, bool symmetric=false) |
| KJB c-style syntax for eigenvalue decomposition. More...
|
|
Vector | forward_substitution (const Matrix &L, const Vector &b) |
| Perform forward substitution to solve the SLE Lx = b, where L is an lower triangular matrix and b is a vector. More...
|
|
Vector | back_substitution (const Matrix &U, const Vector &b) |
| Perform forward substitution to solve the SLE Ux = b, where. More...
|
|
template<class Target , class Given , class Func > |
double | conditional_pdf (const Conditional_distribution< Target, Given, Func > &cd, const typename Distribution_traits< Target >::type &x, const typename Distribution_traits< Given >::type &y) |
| Gets the conditional pdf p(x | y) of the given ConditionalDistribution. More...
|
|
template<class Target , class Given , class Func > |
double | conditional_log_pdf (const Conditional_distribution< Target, Given, Func > &cd, const typename Distribution_traits< Target >::type &x, const typename Distribution_traits< Given >::type &y) |
| Gets the conditional log-pdf log p(x | y) of the given ConditionalDistribution. More...
|
|
template<class Target , class Given , class Func > |
Distribution_traits< Target >::type | conditional_sample (const Conditional_distribution< Target, Given, Func > &cd, const typename Distribution_traits< Given >::type &y) |
| Produces a sample from the given conditioanl distro, given a value for the given variable. More...
|
|
template<class InIter > |
Normal_distribution | mle_normal (InIter first, InIter last) |
|
template<class InIter > |
Beta_distribution | mle_beta (InIter first, InIter last) |
|
template<class InIter > |
Gamma_distribution | mle_gamma (InIter first, InIter last) |
|
template<size_t D, class InIter > |
Von_mises_fisher_distribution< D > | mle_vmf (InIter first, InIter last) |
|
std::pair< double, int > | make_double_int_pair_ (double d, int i) |
|
double | chi_square (const Histogram_2d &hist_1, const Histogram_2d &hist_2) |
|
double | chi_square (const Matrix &h1, const Matrix &h2) |
|
double | pdf (const MV_gaussian_distribution &P, const Vector &x) |
| Computes the joint PDF of a multivariate Gaussian at x. More...
|
|
double | log_pdf (const MV_gaussian_distribution &P, const Vector &x) |
| Computes the log PDF a multivariate normal distribution at x. More...
|
|
double | pdf (const Chinese_restaurant_process &cpr, const Chinese_restaurant_process::Type &B) |
| PDF of the CPR. More...
|
|
double | log_pdf (const Chinese_restaurant_process &cpr, const Chinese_restaurant_process::Type &B) |
| log-PDF of the CPR. More...
|
|
double | pdf (const Geometric_distribution &dist, double x) |
| Computes the PMF of a geometric distribution at x. More...
|
|
double | pdf (const Log_normal_distribution &dist, double x) |
| Computes the PDF of a log-normal distribution at x. More...
|
|
template<class T > |
double | pdf (const Categorical_distribution< T > &dist, const T &x) |
| Computes the PMF of a categorical distribution at x. More...
|
|
template<class Distribution > |
double | pdf (const Mixture_distribution< Distribution > &dist, const typename Distribution_traits< Mixture_distribution< Distribution > >::type &x) |
| Computes the PDF/PMF of a mixture distribution at x. More...
|
|
double | pdf (const Gaussian_distribution &P, double x) |
| Compute pdf of a Gaussian distribution. More...
|
|
double | log_pdf (const Beta_binomial_distribution &dist, double k) |
| Computes the log PDF of a Beta-binomial distribution at k. More...
|
|
double | pdf (const Beta_binomial_distribution &dist, double k) |
| Evaluate the probability density function of a Beta-binomial distribution. More...
|
|
template<size_t D> |
double | log_pdf (const Von_mises_fisher_distribution< D > &dist, const kjb::Vector_d< D > &v) |
|
template<size_t D> |
double | pdf (const Von_mises_fisher_distribution< D > &dist, const kjb::Vector_d< D > &v) |
| Evaluate the probability density function of a Von-mises Fisher distribtuion (x's magnitude is ignored/assumed 1.0) More...
|
|
template<size_t D> |
double | log_pdf (const Uniform_sphere_distribution< D > &, const kjb::Vector_d< D > &) |
| Computes the log PDF of a uniform distribution over the surface of the unit sphere in D-dimensional Euclidean space. The density is given in D-1 dimensional euclidean units. More...
|
|
template<size_t D> |
double | pdf (const Uniform_sphere_distribution< D > &P, const kjb::Vector_d< D > &x) |
| Evaluate the probability density function of a uniform sphere distribution (x's magnitude is ignored / assumed 1.0) More...
|
|
double | cdf (const Log_normal_distribution &dist, double x) |
| Computes the cdf of a log-normal distribution at x. More...
|
|
template<class T > |
double | cdf (const Categorical_distribution< T > &dist, const T &x) |
| Computes the CDF of a categorical distribution at x. More...
|
|
template<class Distribution > |
double | cdf (const Mixture_distribution< Distribution > &dist, const typename Distribution_traits< Mixture_distribution< Distribution > >::type &x) |
| Computes the CDF of a mixture distribution at x. More...
|
|
template<class Distribution > |
double | log_pdf (const Distribution &P, const typename Distribution_traits< Distribution >::type &x) |
| Computes the log PDF of a distribution at x. More...
|
|
double | log_pdf (const Gaussian_distribution &P, double x) |
| Computes the log PDF a normal distribution at x. More...
|
|
double | log_pdf (const Laplace_distribution &P, double x) |
| Computes the log PDF a Laplace distribution at x. More...
|
|
double | log_pdf (const Binomial_distribution &P, double k) |
| Computes the log PDF a normal distribution at x. More...
|
|
Base_generator_type | basic_rnd_gen (DEFAULT_SEED) |
|
Vector | sample (const MV_gaussian_distribution &dist) |
| Sample from a multivariate normal distribution. More...
|
|
Chinese_restaurant_process::Type | sample (const Chinese_restaurant_process &crp) |
| Sample from a CRP. More...
|
|
size_t | sample_occupied_tables (const Chinese_restaurant_process &crp) |
| Sample the number of occupied tables from a CRP (don't store the actual partition). More...
|
|
void | seed_sampling_rand (unsigned int x0) |
| Seed random number generator. More...
|
|
double | sample (const Uniform_distribution &dist) |
| Sample from a uniform distribution. More...
|
|
template<class Distro > |
double | sample (const Distro &dist) |
| Template sample function. More...
|
|
double | sample (const Bernoulli_distribution &dist) |
| Sample from a Bernoulli distribution. More...
|
|
double | sample (const Binomial_distribution &dist) |
| Sample from a Binomial distribution. More...
|
|
double | sample (const Exponential_distribution &dist) |
| Sample from a exponential distribution. More...
|
|
double | sample (const Gaussian_distribution &dist) |
| Sample from a Gaussian distribution. More...
|
|
double | sample (const Poisson_distribution &dist) |
| Sample from a Poisson distribution. More...
|
|
double | sample (const Geometric_distribution &dist) |
|
template<class T > |
T | sample (const Categorical_distribution< T > &dist) |
| Sample from a categorical distribution. More...
|
|
template<class Iterator , class distance_type > |
Iterator | element_uar (Iterator first, distance_type size) |
| Pick an element uniformly at random (UAR) from a sequence, represented by a beginning iterator and a size. More...
|
|
double | sample (const Log_normal_distribution &dist) |
|
template<class Distribution > |
Distribution_traits
< Mixture_distribution
< Distribution > >::type | sample (const Mixture_distribution< Distribution > &dist) |
| Sample from a mixture distribution. More...
|
|
template<size_t D> |
kjb::Vector_d< D > | sample (const Uniform_sphere_distribution< D > &) |
| Sample uniformly from the surface of a unit-sphere in D-dimensional euclidean space. More...
|
|
template<size_t D, class Vector_d_iterator > |
void | sample (const Von_mises_fisher_distribution< D > &dist, size_t n, Vector_d_iterator it) |
|
template<size_t D> |
Vector_d< D > | sample (const Von_mises_fisher_distribution< D > &dist) |
|
template<class Iterator , class Value_type > |
Value_type | mean (Iterator begin, Iterator end, const Value_type &) |
|
template<class Iterator > |
std::iterator_traits< Iterator >
::value_type | mean (Iterator begin, Iterator end=Iterator()) |
|
template<class InputIterator , class Distribution , class Statistic > |
bool | goodness_of_fit_test (InputIterator first, InputIterator last, const Distribution &dist, const Statistic &statistic, double alpha, int num_params, int num_bins) |
|
template<class InputIterator , class Distribution , class Statistic > |
bool | goodness_of_fit_test (InputIterator first, InputIterator last, const Distribution &dist, const Statistic &statistic, double alpha, int dof_redux) |
|
double | chi2stat_helper (int O, int E) |
| Compute the chi-square test value for a single element. More...
|
|
template<class InputIterator > |
double | chi_square_statistic (InputIterator first1, InputIterator last1, InputIterator first2) |
|
double | gstat_helper (int O, int E) |
| Compute the G-test value for a single element. More...
|
|
template<class InputIterator > |
double | g_statistic (InputIterator first1, InputIterator last1, InputIterator first2) |
|
template<class InputIterator , class Distribution > |
bool | chi_square_test (InputIterator first, InputIterator last, const Distribution &dist, double alpha, int num_params, int num_bins) |
|
template<class InputIterator , class Distribution > |
bool | chi_square_test (InputIterator first, InputIterator last, const Distribution &dist, double alpha, int dof_redux) |
|
template<class InputIterator , class Distribution > |
bool | g_test (InputIterator first, InputIterator last, const Distribution &dist, double alpha, int num_params, int num_bins) |
|
template<class InputIterator , class Distribution > |
bool | g_test (InputIterator first, InputIterator last, const Distribution &dist, double alpha, int dof_redux) |
|
Vector | log_normalize (const Vector &vec) |
| normalize a probability vector in log space More...
|
|
Vector | exponentiate (const Vector &vec) |
| elementwise exponentiate a vector without normalizing More...
|
|
Vector | log_normalize_and_exponentiate (const Vector &vec) |
| normalize and exponentiate a vector of unnormalized log probabilities More...
|
|
Matrix | log_normalize_and_exponentiate (const Matrix &mat) |
| row-wise normalize and exponentiate a matrix of log probabilities More...
|
|
Matrix | log_normalize_rows (const Matrix &mat) |
| normalize the rows of a stochastic matrix in log space More...
|
|
Vector | log_marginalize_over_rows (const Matrix &mat) |
| marginalize across the rows of a matrix of log probabilities More...
|
|
Vector | log_marginalize_over_cols (const Matrix &mat) |
| marginalize down the columns of a matrix of log probabilities More...
|
|
double | log_sum (double n1, double n2) |
|
double | log_sum (double n1, double n2, double n3) |
|
template<class Iterator > |
double | log_sum (Iterator first, Iterator last) |
|
double | log_diff (double n1, double n2) |
|
template<size_t D> |
bool | operator== (const Weight_array< D > &left, const Weight_array< D > &right) |
|
template<size_t D> |
bool | operator!= (const Weight_array< D > &left, const Weight_array< D > &right) |
|
template<size_t D> |
Weight_array< D > | operator+ (const Weight_array< D > &left, const Weight_array< D > &right) |
| Free function declarations. More...
|
|
template<size_t D> |
Weight_array< D > | operator* (const Weight_array< D > &left, const Weight_array< D > &right) |
|
template<size_t D> |
Weight_array< D > | operator/ (const Weight_array< D > &left, const Weight_array< D > &right) |
|
template<size_t D> |
Weight_array< D > | operator+ (const Weight_array< D > &w, const typename Weight_array< D >::Val_type &offset) |
|
template<size_t D> |
Weight_array< D > | operator* (const Weight_array< D > &w, const typename Weight_array< D >::Val_type &scale) |
|
template<size_t D> |
Weight_array< D > | operator/ (const Weight_array< D > &w, const typename Weight_array< D >::Val_type &right) |
|
template<size_t D, size_t K> |
Weight_array< D > | convex_combination (const Weight_array< K > &weights, const boost::array< Weight_array< D >, K > &components) |
|
template<size_t D> |
std::ostream & | operator<< (std::ostream &os, const Weight_array< D > &wa) |
|
template<typename T , size_t D> |
std::ostream & | operator<< (std::ostream &os, const boost::array< T, D > &arr) |
|
int | stochastic_dynamics (unsigned int iterations, const kjb::Vector &delta_t, double alpha, unsigned int kick, kjb::Vector ¶meters, int(*compute_energy_gradient)(const Vector ¶meters, Vector &out_gradient), int(*accept_sample)(const Vector ¶meters), int(*log_sample)(const Vector ¶meters, const Vector &momenta)) |
| Double precision leapfrog stochastic dynamics. More...
|
|
int | draw_cylinder (GLUquadricObj *myQuadric, const Vector &p1, const Vector &p2, double r) |
| Uses opengl to draw a cylinder with the given points as the centers of the top and bottom of the cylinder and with the given radius. More...
|
|
int | draw_cylinder (Perspective_camera &c, GLUquadricObj *myQuadric, const Vector &p1, const Vector &p2, double r) |
|
int | draw_cylinder (GLUquadricObj *myQuadric, const Cylinder cyl) |
|
int | draw_cylinder (Perspective_camera &c, GLUquadricObj *myQuadric, const std::vector< Cylinder > cylinders) |
|
int | draw_cylinder_section (GLUquadricObj *myQuadric, const Vector &p1, const Vector &p2, double radius, double angle, const Vector &angle_startpt, const Vector &angle_endpt, GLuint &MY_CLIP_PLANE, GLuint &MY_CLIP_PLANE1) |
| Uses opengl to draw a cylinder section. More...
|
|
int | draw_cylinder_section (Perspective_camera &c, GLUquadricObj *myQuadric, const std::vector< Cylinder_section > cylinders) |
|
void | compute_cylinder_rotation_angles (const Vector &p1, const Vector &p2, Vector &top, Vector &bottom, double &magnitude, double &angle_y, double &angle_x) |
|
void | draw_translated_and_rotated_cylinder (GLUquadricObj *myQuadric, const Vector &bottom, const double angle_y, const double angle_x, const double radius, const double magnitude) |
|
void | build_cylinder (std::vector< Vector > &vlist, std::vector< Vector > &nlist, int facets, int ribs, float radius, float length) |
| Creates a list of vertices for a cylinder with the given height and radius on the z-axis with the bottom face centered at the origin. Also creates a corresponding list containing the normal vector for each vertex. More...
|
|
void | build_frustum (std::vector< Vector > &vlist, std::vector< Vector > &nlist, int facets, int ribs, float radius_bottom, float radius_top, float length) |
| Creates a list of vertices for a frustum with the given height and radius of bottom and top faces on the z-axis with the bottom face centered at the origin. Also creates a corresponding list containing the normal vector for each vertex. More...
|
|
void | untransform_points (std::vector< Vector > &vlist, const Vector &bottom, const double angle_y, const double angle_x, std::vector< Vector > &vlist_tr) |
|
void | draw_cylinder_edges (std::vector< Vector > &vlist, int facets, int ribs, const Vector &bottom, const double angle_y, const double angle_x, const Perspective_camera *camera) |
|
void | draw_cylinder_facets (std::vector< Vector > &vlist, int facets, int ribs) |
|
void | render_cylinder_silhouette (const Polymesh *polymesh, const Perspective_camera *camera) |
|
void | render_occlude_cylinder_silhouette (const Polymesh *polymesh, const Perspective_camera *camera) |
|
void | render_frustum_silhouette (const Polymesh *polymesh, Perspective_camera *camera) |
|
void | render_occlude_frustum_silhouette (const Polymesh *polymesh, Perspective_camera *camera) |
|
double | propose_parapiped_and_camera_from_orthogonal_corner_good (kjb::Parametric_parapiped &pp, kjb::Perspective_camera &camera, const kjb::Manhattan_corner &corner, double focal_length, unsigned int num_rows, unsigned int num_cols, double corner_3D_z_position, double p_width_ratio, double p_height_ratio, double p_length_ratio) |
|
bool | propose_parapiped_inside_parapiped_from_orthogonal_corner (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, const kjb::Vector &imin_desired_dimensions, unsigned int num_rows, unsigned int num_cols, double distance_from_camera, bool expand_room=true) |
|
bool | propose_frame_inside_parapiped_from_orthogonal_corner (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, unsigned int &face_number, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, const kjb::Vector &idesired_dimensions, unsigned int num_rows, unsigned int num_cols) |
|
bool | propose_frame_inside_parapiped_from_orthogonal_corner_good (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, unsigned int &face_number, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, const kjb::Vector &idesired_dimensions, unsigned int num_rows, unsigned int num_cols, bool wall_x, bool expand_to_the_ground) |
|
bool | propose_parapiped_at_different_depth_from_orthogonal_corner (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, const kjb::Vector &imin_desired_dimensions, unsigned int num_rows, unsigned int num_cols, double distance_from_camera, bool expand_room) |
|
bool | propose_parapiped_onside_parapiped_from_orthogonal_corner (kjb::Vector ¢re, kjb::Vector &dimensions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, const kjb::Vector &imin_desired_dimensions, unsigned int num_rows, unsigned int num_cols, double distance_from_camera, bool expand_sp_obj, kjb::Vector &sp_obj_centre, kjb::Vector &sp_obj_dimensions) |
|
bool | propose_supported_parapiped_inside_parapiped_from_orthogonal_corner (kjb::Vector ¢re, kjb::Vector &dimensions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, const kjb::Vector &imin_desired_dimensions, unsigned int num_rows, unsigned int num_cols, double distance_from_camera, bool expand_sp_obj, kjb::Vector &sp_obj_centre, kjb::Vector &sp_obj_dimensions) |
|
bool | propose_parapiped_inside_parapiped_from_orthogonal_corner_against_wall (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, const kjb::Vector &imin_desired_dimensions, unsigned int num_rows, unsigned int num_cols, double distance_from_camera, bool expand_room, bool expand_right, bool expand_z_up, bool expand_towards_camera) |
|
bool | propose_supported_parapiped_inside_parapiped_from_three_corners (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner1, const Manhattan_corner &corner2, const Manhattan_corner &corner3, double desired_height, unsigned int num_rows, unsigned int num_cols, double base_height) |
|
bool | propose_parapiped_inside_parapiped_from_three_corners_on_the_floor (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner1, const Manhattan_corner &corner2, const Manhattan_corner &corner3, double desired_height, unsigned int num_rows, unsigned int num_cols) |
|
bool | propose_parapiped_inside_parapiped_from_two_corners_on_the_floor (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner1, const Manhattan_corner &corner2, double desired_height, double desired_other_dimension_ratio, bool direction, bool &is_diagonal, bool &is_dx, unsigned int num_rows, unsigned int num_cols) |
|
bool | propose_parapiped_onside_parapiped_from_one_corner_in_the_center (kjb::Vector ¢re, kjb::Vector &dimensions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, const kjb::Vector &imin_desired_dimensions, unsigned int num_rows, unsigned int num_cols, double distance_from_camera, bool expand_sp_obj, kjb::Vector &sp_obj_centre, kjb::Vector &sp_obj_dimensions) |
|
bool | propose_parapiped_inside_parapiped_from_one_corner_in_the_centre_on_the_floor (kjb::Vector ¢re, kjb::Vector &dimensions, kjb::Vector &expansion_deltas, std::vector< bool > &expansion_directions, Parametric_parapiped &new_pp, const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, double desired_height, double desired_width, double desired_length, bool &is_dx, unsigned int num_rows, unsigned int num_cols) |
|
void | expand_towards_camera (const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &corner, unsigned int num_rows, unsigned int num_cols, bool &expand_tw_camera, bool &expand_right, bool &expand_z_up) |
|
double | propose_parapiped_and_camera_from_vanishing_points (kjb::Parametric_parapiped &pp, kjb::Perspective_camera &camera, const std::vector< Vanishing_point > &vpts, double focal_length, unsigned int num_rows, unsigned int num_cols) |
|
bool | find_height_from_two_corners (const Parametric_parapiped &pp, const Perspective_camera &camera, const Manhattan_corner &floor_corner, const Manhattan_corner &top_corner, double &desired_height, unsigned int num_rows, unsigned int num_cols) |
|
bool | shift_parapiped_to_match_corner (kjb::Parametric_parapiped &pp, kjb::Perspective_camera &camera, unsigned int num_rows, unsigned int num_cols, const kjb::Vector &corner) |
|
bool | propose_frame_inside_parapiped_from_three_corners_on_the_wall (kjb::Vector ¢re, kjb::Vector &dimensions, const Parametric_parapiped &pp, const Perspective_camera &camera, unsigned int &face_number, const Manhattan_corner &corner1, const Manhattan_corner &corner2, const Manhattan_corner &corner3, unsigned int num_rows, unsigned int num_cols) |
|
bool | backproject_point_to_plane (kjb::Vector &intersection, kjb::Vector point2D, kjb::Vector plane, const Parametric_parapiped &pp, const Perspective_camera &camera, int num_rows, int num_cols) |
|
void | update_focal_with_position (Perspective_camera &cam, double ifocal, Parametric_parapiped &pp) |
|
Vector | set_camera_to_view_entire_model (Perspective_camera &c, Polymesh &p, int imageWidth, int imageHeight) |
|
int | get_ned_fdeq (const std::string &fn, std::deque< float > *odq, bool flip) |
| read the floating-point values of a NED13 file into a deque. More...
|
|
int | get_ned_fdeq (const std::string &fn, std::deque< float > *odq, enum NED13_FLOAT_AUTODETECT byteorder) |
| read the floating-point values of a NED13 file into a deque. More...
|
|
int | ned_fdeq_to_matrix (const std::deque< float > &ibuf, Matrix *omat) |
| convert a deque of floats into a square kjb Matrix More...
|
|
int | get_ned_matrix (const std::string &fn, Matrix *omat, bool flip) |
| read the floating-point values of a NED13 file into a square matrix. More...
|
|
int | get_ned_matrix (const std::string &fn, Matrix *omat, enum NED13_FLOAT_AUTODETECT byteorder) |
| read the floating-point values of a NED13 file into a square matrix. More...
|
|
int | autodetect_ned_byteorder (const std::string &fn, enum NED13_FLOAT_AUTODETECT *result) |
| attempt to determine the byteorder of the input file. More...
|
|
TopoPt | force_zone_to_this (const TopoPt &p, char use_this_zone) |
|
int | ned13_grid (const TopoFusion::pt ¢er, Matrix *elev_o, Matrix *elev_de_o, Matrix *elev_dn_o, int eastwest_size_meters=2000, int northsouth_size_meters=2000, int resolution_meters=1, Ned13_caching_reader *cache=0, const std::vector< std::string > &path=std::vector< std::string >()) |
| generate a grid describing an elevation model near some location More...
|
|
double | delta_e_meters (const Ned13_one_degree_grid::IntegralLL &) |
| distance, in meters, of the next grid point to the east More...
|
|
double | delta_n_meters (const Ned13_one_degree_grid::IntegralLL &) |
| distance, in meters, of the next grid point to the north More...
|
|
std::pair< double, double > | delta_n_e_meters (const Ned13_one_degree_grid::IntegralLL &) |
| distances, in meters, of next grid pt north (first), east (second) More...
|
|
TopoFusion::pt | ned13_ill_to_utm (const Ned13_one_degree_grid::IntegralLL &) |
| convert to UTM coordinates (no elevation) More...
|
|
GILL | utm_to_se_ned13_ill (const TopoFusion::pt &p) |
| convert from UTM coord to grid location, truncating to the southeast More...
|
|
GILL | round_nw_to_whole_degrees (const GILL &ill) |
| map an input location to the nearest location to northwest of whole degrees More...
|
|
TopoFusion::pt | dem_to_doq_displacement (const TopoFusion::pt &dem_p) |
| return correction factor between DEM and DOQ coordinate systems. More...
|
|
bool | operator== (const Ned13_one_degree_grid::IntegralLL &p, const Ned13_one_degree_grid::IntegralLL &q) |
| test two coordinate locations for equality More...
|
|
bool | operator< (const kjb::Ned13_one_degree_grid::IntegralLL &p, const kjb::Ned13_one_degree_grid::IntegralLL &q) |
| impose an order on coordinate locations (geographically silly). More...
|
|
Ned13_one_degree_grid::IntegralLL | round_nw_to_whole_degrees (const Ned13_one_degree_grid::IntegralLL &) |
|
Matrix | ned13_grid (const TopoFusion::pt ¢er, int eastwest_size_meters=2000, int northsouth_size_meters=2000, int resolution_meters=1, Ned13_caching_reader *cache=0, const std::vector< std::string > &path=std::vector< std::string >()) |
| generate a grid of elevation values between points at a location More...
|
|
void | set_spy_filename (const std::string &) |
|
TopoFusion::pt | force_zone_to_this (const TopoFusion::pt &, char use_this_zone) |
|
Image | ned_visualize_grid (const Matrix &elev_o, const Matrix &elev_de_o, const Matrix &elev_dn_o, int decimation=1, int bar_length=0) |
| show NED grid output in visual form More...
|
|
void | compute_median_background (const std::vector< std::string > &frames_fps, Matrix &r_mat, Matrix &g_mat, Matrix &s_mat, size_t sub_sampling_sz=1, size_t rate=1) |
| Compute the background value by a median filter. More...
|
|