app = QtGui.QApplication([]) wid = QtGui.QWidget() prj = SurveyProject(output_folder=testing.output_data_folder(), progress=QtProgress(parent=wid)) prj.set_callback(QtGridCallback(progress=prj.progress)) # add BAG files bag_files = testing.input_test_files(".bag") # logger.info("S57 files: %d" % len(bag_files)) # prj.add_to_grid_list(bag_files[0]) prj.add_to_grid_list( "C:\\Users\\gmasetti\\Google Drive\\QC Tools\\test data\\H12976\\H12976_MB_1m_MLLW_1of2.bag" ) prj.add_to_s57_list( "C:\\Users\\gmasetti\\Google Drive\\QC Tools\\test data\\H12976\\H12976_FFF_Test.000" ) four_gb = 4294967296 one_mb = 1048576 specs = "2016" prj.clear_survey_label() prj.read_feature_file(feature_path=prj.s57_list[0]) prj.open_grid(path=prj.grid_list[0], chunk_size=four_gb) prj.designated_scan_v2(survey_scale=20000, neighborhood=True, specs=specs) saved = prj.save_designated() if saved: prj.open_designated_output_folder() logger.debug(prj)
from PySide import QtGui from hyo2.qc.qctools.qt_progress import QtProgress app = QtGui.QApplication([]) wid = QtGui.QWidget() prj = SurveyProject(output_folder=testing.output_data_folder(), progress=QtProgress(parent=wid)) # add a S57 file # s57_files = testing.input_test_files(".000") # print("- S57 files: %d" % len(s57_files)) # prj.add_to_s57_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\testing\\survey\\valsou_check\\test1\\H12976_FFF_clip.000") # prj.add_to_s57_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\data\\survey\\VALSOU Check\\H12881\\H12881_Final_Feature_File.000") prj.add_to_s57_list( "C:\\Users\\gmasetti\\Google Drive\\QC Tools\\data\\_issues\\VALSOU_Check_8_27_2018\\H13022_FFF.000" ) logger.debug(prj) # add a grid file # csar_files = testing.input_test_files(".csar") # print("- CSAR files: %d" % len(csar_files)) # bag_files = testing.input_test_files(".bag") # print("- BAG files: %d" % len(bag_files)) # prj.add_to_grid_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\testing\\survey\\valsou_check\\test1\\H12976_1m_clip.csar") # prj.add_to_grid_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\testing\\survey\\valsou_check\\test1\\H12976_1m_clip.bag") #prj.add_to_grid_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\testing\\survey\\valsou_check\\test1\\H12976_VR_clip.csar") #prj.add_to_grid_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\testing\\survey\\valsou_check\\test1\\H12976_VR_clip.bag") # prj.add_to_grid_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\data\\survey\\VALSOU Check\\H12881\\H12881_MB_1m_MLLW_1of5.bag") # prj.add_to_grid_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\data\\survey\\VALSOU Check\\H12881\\H12881_MB_2m_MLLW_Final.csar") prj.add_to_grid_list(
from PySide import QtGui from hyo2.qc.common import default_logging import logging default_logging.load() logger = logging.getLogger() from hyo2.qc.qctools.qt_progress import QtProgress from hyo2.qc.survey.project import SurveyProject from hyo2.qc.common import testing app = QtGui.QApplication([]) wid = QtGui.QWidget() # create the project prj = SurveyProject(output_folder=testing.output_data_folder(), progress=QtProgress(parent=wid)) # add a S57 file s57_files = testing.input_test_files(".000") print("- S57 files: %d" % len(s57_files)) # prj.add_to_s57_list(s57_files[3]) prj.add_to_s57_list( "C:/Users/gmasetti/Google Drive/QC Tools/test data\H12679/testing_feature_scan_v5/feature_testfile_10212016.000" ) print("%s" % (prj.s57_list, )) logger.debug(prj) prj.prf_check(version=1, specs_version='2018')
# options use_internal_test_files = False use_internal_csar = True with_laser = True specs_version = "2021" is_target_detection = False prj = SurveyProject(output_folder=testing.output_data_folder(), progress=QtProgress(parent=wid)) # add a S57 file if use_internal_test_files: s57_idx = 0 s57_files = testing.input_test_files(".000") logger.debug("- test S57 files: %d" % len(s57_files)) logger.debug("- adding test S57 file #%d" % s57_idx) prj.add_to_s57_list(s57_path=s57_files[s57_idx]) # add a grid file grid_idx = 0 if use_internal_csar: grid_files = testing.input_test_files(".csar") logger.debug("- test CSAR files: %d" % len(grid_files)) else: grid_files = testing.input_test_files(".bag") logger.debug("- test BAG files: %d" % len(grid_files)) logger.debug("- adding test grid file #%d" % grid_idx) prj.add_to_grid_list(path=grid_files[grid_idx]) else: prj.add_to_s57_list(r"C:\code\hyo2\processing\hyo2_qc\data\download\H13384_FFF_testing_subset.000") prj.add_to_grid_list(r"C:\code\hyo2\processing\hyo2_qc\data\download\H13384_50cm_MLLW_testing_subset.csar")
# create the project prj = SurveyProject(output_folder=output_folder) # set output settings prj.output_shp = out_shp prj.output_kml = out_kml # add all the BAG files to the project for bag_path in bag_todo_list: prj.add_to_grid_list(bag_path) # add all FFF files to the project for fff in fff_todo_list: prj.add_to_s57_list(fff) # create 3 empty lists: one for the BAGs successfully processed, one for the ones with fliers, and another for crashes bag_done_list = list() bag_with_fliers_list = list() bag_crash_list = list() # actually processing the BAG files nr_fliers_per_bag_dict = dict() tvu_height_per_bag_dict = dict() for i, bag_path in enumerate(prj.grid_list): try: # Trapping Exceptions like OSError (File permissions) logger.debug(">>>>>> #%03d (%s): processing ..." % (i, bag_path))
import logging default_logging.load() logger = logging.getLogger() from hyo2.abc.app.qt_progress import QtProgress from hyo2.qc.survey.project import SurveyProject from hyo2.qc.common import testing from hyo2.qc.survey.scan.checks import Checks app = QtWidgets.QApplication([]) wid = QtWidgets.QWidget() # create the project prj = SurveyProject(output_folder=testing.output_data_folder(), progress=QtProgress(parent=wid)) # add a S57 file s57_files = testing.input_test_files(".000") logger.debug("- S57 files: %d" % len(s57_files)) prj.add_to_s57_list(s57_files[3]) # prj.add_to_s57_list("C:/Users/gmasetti/Google Drive/QC Tools/data/survey/feature_scan/H12971_FFF_Field_2018.000") # prj.add_to_s57_list("C:/Users/gmasetti/Google Drive/QC Tools/test data/2018_HSSD_Test/H12971_FFF_Office_2018Test.000") logger.debug("%s" % (prj.s57_list, )) logger.debug(prj) prj.feature_scan(specs_version='2021', use_mhw=True, mhw_value=4.0, survey_area=Checks.survey_areas["Pacific Coast"])
def run_find_fliers(self, args): if not os.path.exists(args.output_folder): raise RuntimeError('Unable to locate output folder: %s' % args.output_folder) out_folder = args.output_folder logger.debug('output folder: %s' % out_folder) # create the project prj = SurveyProject(output_folder=out_folder) if not os.path.exists(args.input_dtm): raise RuntimeError('Unable to locate input DTM: %s' % args.input_dtm) dtm_file = args.input_dtm logger.debug('input DTM: %s' % dtm_file) prj.add_to_grid_list(dtm_file) if args.s57_path is not None: if not os.path.exists(args.s57_path): raise RuntimeError('Unable to locate input S57: %s' % args.s57_path) s57_file = args.s57_path logger.debug('input S57: %s' % s57_file) prj.add_to_s57_list(s57_file) if args.enforce_height is not None: if args.enforce_height <= 0.0: raise RuntimeError('Invalid height: %s' % args.enforce_height) height_value = args.enforce_height # logger.debug('height: %s' % height_value) check_laplacian = args.check_laplacian check_curv = args.check_curv check_adjacent = args.check_adjacent check_slivers = args.check_slivers check_isolated = args.check_isolated check_edges = args.check_edges filter_designated = args.filter_designated filter_fff = args.filter_fff self._check_web_page( token='FFv8_%d%d%d%d%d%d_%d%d' % (check_laplacian, check_curv, check_adjacent, check_slivers, check_isolated, check_edges, filter_designated, filter_fff)) # actual execution for i, grid_path in enumerate(prj.grid_list): logger.debug(">>> #%d (%s)" % (i, grid_path)) prj.clear_survey_label() prj.set_cur_grid(path=grid_path) prj.open_to_read_cur_grid(chunk_size=4294967296) prj.find_fliers_v8(height=height_value, check_laplacian=check_laplacian, check_curv=check_curv, check_adjacent=check_adjacent, check_slivers=check_slivers, check_isolated=check_isolated, check_edges=check_edges, filter_fff=filter_fff, filter_designated=filter_designated) prj.close_cur_grid() prj.set_cur_grid(path=grid_path) prj.open_to_read_cur_grid(chunk_size=4294967296) prj.find_fliers_v8_apply_filters() saved = prj.save_fliers() if saved: logger.debug('Fliers saved')
csar_files = testing.input_test_files(".csar") logger.debug("test CSAR files: %d" % len(csar_files)) bag_files = testing.input_test_files(".bag") logger.debug("test BAG files: %d" % len(bag_files)) # prj.add_to_grid_list(csar_files[0]) # prj.add_to_grid_list(bag_files[0]) prj.add_to_grid_list( r"C:\Users\gmasetti\Google Drive\QC Tools\data\survey\Find Fliers\v8_filters\test_finalized.csar" ) prj.add_to_grid_list( r"C:\Users\gmasetti\Google Drive\QC Tools\data\survey\Find Fliers\v8_filters\test_finalized.bag" ) prj.add_to_s57_list( r"C:\Users\gmasetti\Google Drive\QC Tools\data\survey\Find Fliers\v8_filters\v8_filters.000" ) logger.debug("grid list: %s" % (prj.grid_list, )) for i, grid_path in enumerate(prj.grid_list): logger.debug(">>> #%d (%s)" % (i, grid_path)) prj.clear_survey_label() prj.set_cur_grid(path=grid_path) prj.open_to_read_cur_grid(chunk_size=four_gb) prj.find_fliers_v8(height=height_value, check_laplacian=check_laplacian, check_curv=check_curv,
app = QtGui.QApplication([]) wid = QtGui.QWidget() prj = SurveyProject(output_folder=testing.output_data_folder(), progress=QtProgress(parent=wid)) # add a S57 file # s57_files = testing.input_test_files(".000") # print("- S57 files: %d" % len(s57_files)) # prj.add_to_s57_list(s57_files[0]) # prj.add_to_s57_list(s57_files[1]) # prj.add_to_s57_list(s57_files[2]) # prj.add_to_s57_list(s57_files[3]) prj.add_to_s57_list( "C:\\Users\\gmasetti\\Google Drive\\QC Tools\\support\\CMECS\\BottomSample_QCTools_Input-Output\\Input\\H12895_FFF.000" ) # prj.add_to_s57_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\support\\CMECS\\BottomSample_QCTools_Input-Output\\Input2\\H12850_Final_Feature_File_Office.000") # prj.add_to_s57_list("C:\\Users\\gmasetti\\Google Drive\\QC Tools\\support\\CMECS\\BottomSample_QCTools_Input-Output\\Input3\\H12679_FFF.000") print("%s" % (prj.s57_list, )) logger.debug(prj) do_exif = True for s57_file in prj.s57_list: prj.clear_survey_label() prj.read_feature_file(feature_path=s57_file) prj.sbdare_export_v4(exif=do_exif) saved_ascii = prj.save_sbdare() if saved_ascii:
from hyo2.qc.survey.project import SurveyProject from hyo2.qc.common import testing from PySide import QtGui from hyo2.qc.qctools.qt_progress import QtProgress app = QtGui.QApplication([]) wid = QtGui.QWidget() prj = SurveyProject(output_folder=testing.output_data_folder(), progress=QtProgress(parent=wid)) # add a S57 file # s57_files = testing.input_test_files(".000") # print("- S57 files: %d" % len(s57_files)) # prj.add_to_s57_list(s57_files[0]) # prj.add_to_s57_list(s57_files[1]) # prj.add_to_s57_list(s57_files[2]) # prj.add_to_s57_list(s57_files[3]) prj.add_to_s57_list("C:\\Users\\gmasetti\\Google Drive\\CMECS Crosswalk Automation\\Input\\H12895_FFF.000") print("%s" % (prj.s57_list,)) logger.debug(prj) for s57_file in prj.s57_list: prj.clear_survey_label() prj.read_feature_file(feature_path=s57_file) prj.sbdare_export_v3() saved_ascii = prj.save_sbdare() if saved_ascii: prj.open_sbdare_output_folder()