def connect_pose_to_feature(new_pose_node, feature_node, transform, point_matches, pose_3d_points, feature_3d_points):
    global session

    edge = Graph_Edges()
    edge.node_1_id = new_pose_node.node_id
    edge.node_1_type = "pose"
    edge.node_2_id = feature_node.node_id
    edge.node_2_type = "feature"

    transform_filepath = save_transform(transform, None, new_pose_node, feature_node)
    edge.opt_transform_1_to_2_filepath = transform_filepath

    _3d_matches_filepath = save_3d_matches(
        point_matches, pose_3d_points, feature_3d_points, new_pose_node.node_id, feature_node.node_id, transform
    )

    edge._3d_matches_filepath = _3d_matches_filepath

    session.add(edge)
    session.commit()