MSE-CNN Implementation 1
Code database with the implementation of MSE-CNN, from the paper 'DeepQTMT: A Deep Learning Approach for Fast QTMT-based CU Partition of Intra-mode VVC'
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
dataset_utils.py File Reference

Classes

class  msecnn_raulkviana.dataset_utils.VideoCaptureYUV
 
class  msecnn_raulkviana.dataset_utils.VideoCaptureYUVV2
 

Namespaces

namespace  msecnn_raulkviana
 
namespace  msecnn_raulkviana.dataset_utils
 

Functions

 msecnn_raulkviana.dataset_utils.yuv2bgr (matrix)
 Converts yuv matrix to bgr matrix.
 
 msecnn_raulkviana.dataset_utils.bgr2yuv (matrix)
 Converts BGR matrix to YUV matrix.
 
 msecnn_raulkviana.dataset_utils.extract_content (f)
 Extract a single record from binary file.
 
 msecnn_raulkviana.dataset_utils.file_stats (path)
 Finds out the size of the binary file and computes the number of records.
 
 msecnn_raulkviana.dataset_utils.show_bin_content (path, num_records=100)
 Show contents of a binary file containing encoding information.
 
 msecnn_raulkviana.dataset_utils.add_best_split (labels)
 Modifies labels by adding an extra parameter.
 
 msecnn_raulkviana.dataset_utils.read_from_records (path, num_records)
 Read the information/file generated by the encoder Dictionary containing all the info about the file: It's a dictionary of picture numbers, which then leads to a dictionary of the info.
 
 msecnn_raulkviana.dataset_utils.process_info (content)
 Process the raw data from the labels given by the encoder.
 
 msecnn_raulkviana.dataset_utils.match_cu (CU, CTU, position, size)
 Verifies if the CUs are the same based in their position, size and other information.
 
 msecnn_raulkviana.dataset_utils.find_cu (df_cu, CTU, position, size)
 Verifies if the CU is in the dataframe, using the size and other information.
 
 msecnn_raulkviana.dataset_utils.build_entry (stg1=[], stg2=[], stg3=[], stg4=[], stg5=[], stg6=[])
 Builds a entry with all information needed for each stage, and also removes unnecessary info.
 
 msecnn_raulkviana.dataset_utils.add_cu_to_dict (cu_dict, cu)
 Adds information of a specific CU to the dictionary.
 
 msecnn_raulkviana.dataset_utils.transform_create_struct_faster_v2_mod_divs (f, f_name, num_records, output_dir, n_output_file, color_ch=0)
 First obtains all CTUs and CUs in the file using a dictionary/dataframe, afterward organizes them in a stage oriented way.
 
 msecnn_raulkviana.dataset_utils.transform_create_struct_faster_v3 (f, f_name, num_records, output_dir, n_output_file, color_ch=0)
 First obtains all CTUs and CUs in the file using a dictionary/dataframe, afterward organizes them in a stage oriented way.
 
 msecnn_raulkviana.dataset_utils.process_ctus_cus (df_ctus, df_cus)
 Function to create data structures to organize the CTUs and CUs.
 
 msecnn_raulkviana.dataset_utils.split (size, pos, split_mode)
 Split a CU in one of the specific modes (quad tree, binary vert tree, binary horz tree, threenary vert tree, etc)
 
 msecnn_raulkviana.dataset_utils.transform_raw_dataset (dic)
 Transform raw dataset (dictionary with information of all datasets) and convert it to a list of dictionaries.
 
 msecnn_raulkviana.dataset_utils.get_files_from_folder (path, endswith=".yuv")
 This function obtains the name of all .yuv files in a given path.
 
 msecnn_raulkviana.dataset_utils.get_num_frames (path, name, width, height)
 Get number of frames in yuv file.
 
 msecnn_raulkviana.dataset_utils.get_file_metadata_info (path, name)
 Retrieves information about the YUV file info (framerate, width and height and number of frames)
 
 msecnn_raulkviana.dataset_utils.get_file_metadata_info_mod (name)
 Retrieves information about the YUV file info (framerate, width and height ).
 
 msecnn_raulkviana.dataset_utils.encode_dataset (d_path="C:\\Users\\Raul\\Dropbox\\Dataset", e_path="C:\\Users\\Raul\\Documents\\GitHub\\CPIV\\VTM-7.0_Data\\bin\\vs16\\msvc-19.24\\x86_64\\release", ts=1, QP=32)
 This function encodes the entire dataset with in a given path.
 
 msecnn_raulkviana.dataset_utils.compute_split_per_depth (d_path)
 Compute the percentage and number of splits per depth of the partitiooning scheme.
 
 msecnn_raulkviana.dataset_utils.compute_split_per_depth_v2 (d_path)
 Compute the percentage and number of splits per depth of the partitiooning scheme.
 
 msecnn_raulkviana.dataset_utils.compute_split_per_depth_v3 (d_path)
 Compute the percentage and number of splits per depth of the partitiooning scheme.
 
 msecnn_raulkviana.dataset_utils.lst2csv (lst, name_of_file)
 Converts list of dictionaries to csv file.
 
 msecnn_raulkviana.dataset_utils.get_some_data_equaly (X, path_dir_l, classes, split_pos)
 Gets X amount of data from files.
 
 msecnn_raulkviana.dataset_utils.lst2csv_v2 (lst_lst, n_file, n_fields)
 Converts list to csv file using panda dataframe.
 
 msecnn_raulkviana.dataset_utils.csv2lst (csv_file)
 Reads csv file.
 
 msecnn_raulkviana.dataset_utils.file2lst (file)
 Reads file.
 
 msecnn_raulkviana.dataset_utils.lst2file (lst, name_of_file)
 Converts list of dictionaries to file.
 
 msecnn_raulkviana.dataset_utils.unite_labels_v6 (dir_path_l, n_output_file="labels_pickle", color_ch=0)
 Unites all the labels into a giant list.
 
 msecnn_raulkviana.dataset_utils.unite_labels_v6_mod (dir_path_l, n_output_file="labels_pickle", color_ch=0)
 Unites all the labels into a giant list.
 
 msecnn_raulkviana.dataset_utils.create_dir (output_dir)
 Creates a directory.
 
 msecnn_raulkviana.dataset_utils.labels_with_specific_cch (dir_path, cch=0)
 Obtain from a group of labels in a pickle file the CUs which the color channel is 'cch'.
 
 msecnn_raulkviana.dataset_utils.read_from_records_v2 (f, f_name, num_records)
 Read the information/file generated by the encoder.
 
 msecnn_raulkviana.dataset_utils.file_stats_v2 (path)
 Finds out the size of all binary files, computes the total amount of records, computes the amount of each CU.
 
 msecnn_raulkviana.dataset_utils.compute_split_proportions (path, num_cus=float('inf'))
 Compute the proportion of each split in the dataset.
 
 msecnn_raulkviana.dataset_utils.compute_split_proportions_with_custom_data (custom_dataset, stage, num_cus=float('inf'))
 Compute the proportion of each split in the dataset (Custom dataset classs)
 
 msecnn_raulkviana.dataset_utils.compute_split_proportions_with_custom_data_multi (custom_dataset, split_pos_in_struct, num_cus=float('inf'))
 Compute the proportion of each split in the dataset (Custom dataset classs)
 
 msecnn_raulkviana.dataset_utils.compute_split_proportions_with_path_multi_new (path, split_pos_in_struct, num_cus=float('inf'))
 Compute the proportion of each split in the dataset (Custom dataset classs)
 
 msecnn_raulkviana.dataset_utils.compute_split_proportions_with_custom_data_multi_new (custom_dataset, split_pos_in_struct, num_cus=float('inf'))
 Compute the proportion of each split in the dataset (Custom dataset classs)
 
 msecnn_raulkviana.dataset_utils.compute_split_proportions_labels (path, num_cus=float('inf'))
 Compute the proportion of each split in the dataset.
 
 msecnn_raulkviana.dataset_utils.balance_dataset (dir_path, stg, n_classes=6)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.balance_dataset_JF (dir_path, n_classes=6)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.balance_dataset_down (dir_path, n_classes=6)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.balance_dataset_down_v2 (dir_path)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.balance_dataset_down_v3 (dir_path)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.balance_dataset_down_v4 (dir_path)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.balance_dataset_up (dir_path, n_classes=6)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.balance_dataset_up_v2 (dir_path)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.balance_dataset_up_v3 (dir_path)
 Balance dataset so that the number of the classes are the same.
 
 msecnn_raulkviana.dataset_utils.gen_dataset_types (d_path, valid_percent)
 Generate a dataset for trainign, validating and testing.
 
 msecnn_raulkviana.dataset_utils.change_struct_64x64_eval (path_dir_l)
 This version is meant to be used in to process the stage 1 and 2 data.
 
 msecnn_raulkviana.dataset_utils.change_struct_32x32_eval (path_dir_l)
 This version is meant to be used in to process the stage 3 data.
 
 msecnn_raulkviana.dataset_utils.change_struct_64x64 (path_dir_l)
 This version is meant to be used in to process the stage 1 and 2 data.
 
 msecnn_raulkviana.dataset_utils.change_struct_64x64_no_dupl_v3 (path_dir_l)
 This version is like the change_struct_64x64_no_dupl_v2, with threads.
 
 msecnn_raulkviana.dataset_utils.mod_64x64_threads (f, path_dir_l, right_rows, columns, new_dir)
 
 msecnn_raulkviana.dataset_utils.change_struct_64x64_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2.
 
 msecnn_raulkviana.dataset_utils.change_struct_32x32 (path_dir_l)
 This version is meant to be used in to process the stage 3 data.
 
 msecnn_raulkviana.dataset_utils.change_struct_32x32_no_dupl (path_dir_l)
 This version is like the change_struct_32x32, but it removes possible duplicated rows.
 
 msecnn_raulkviana.dataset_utils.change_struct_32x32_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is smarter.
 
 msecnn_raulkviana.dataset_utils.change_struct_32x32_no_dupl_v3 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but uses threads.
 
 msecnn_raulkviana.dataset_utils.mod_32x32_threads (f, path_dir_l, right_rows, columns, new_dir)
 
 msecnn_raulkviana.dataset_utils.change_struct_32x32_no_dupl_v2_test (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but is for verifying if everything is right.
 
 msecnn_raulkviana.dataset_utils.change_struct_16x16_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to 16x16 CUs.
 
 msecnn_raulkviana.dataset_utils.list2tuple (l)
 
 msecnn_raulkviana.dataset_utils.tuple2list (l)
 
 msecnn_raulkviana.dataset_utils.change_struct_8x8_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to 16x16 CUs.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg6_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stage 6.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg5_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stage 5.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg2_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stage 2.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg4_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stage 4.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg3_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stage 3.
 
 msecnn_raulkviana.dataset_utils.change_struct_32x16_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to 32x16 CUs.
 
 msecnn_raulkviana.dataset_utils.change_struct_32x8_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to 32x8 CUs.
 
 msecnn_raulkviana.dataset_utils.change_struct_16x8_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to 16x8 CUs.
 
 msecnn_raulkviana.dataset_utils.change_struct_8x4_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to 8x4 CUs.
 
 msecnn_raulkviana.dataset_utils.change_struct_32x4_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to 32x4 CUs.
 
 msecnn_raulkviana.dataset_utils.change_struct_16x4_no_dupl_v2 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to 8x4 CUs.
 
 msecnn_raulkviana.dataset_utils.change_struct_16x16_no_dupl_v3 (path_dir_l)
 This version is like the change_struct_16x16_no_dupl_v2, but uses threads.
 
 msecnn_raulkviana.dataset_utils.mod_16x16_threads (f, path_dir_l, right_rows, columns, new_dir)
 
 msecnn_raulkviana.dataset_utils.change_struct_16x16 (path_dir_l)
 This version is meant to be used in to process the stage 4 data.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg_4_complexity_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stages 4.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg_3_complexity_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stages 3.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg_2_complexity_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stages 2.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg_6_complexity_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stages 6.
 
 msecnn_raulkviana.dataset_utils.change_struct_no_dupl_stg_5_complexity_v4 (path_dir_l)
 This version is like the change_struct_32x32_no_dupl_v2, but it is applied to stages 5.