Ellipses and their distributions
Ellipses and their distributions
Quick start
from combra import mvee, data
import json
pixel = 50 / 1000
step = 4
images_path = data.example_class_path()
json_save_name = 'test'
types_dict = {'Ultra_Co11': 'средние зерна',
'Ultra_Co25': 'мелкие зерна',
'Ultra_Co8': 'средне-мелкие зерна',
'Ultra_Co6_2': 'крупные зерна',
'Ultra_Co15': 'средне-мелкие зерна'}
mvee.diametr_approx_save(
images_path=images_path,
save_path=json_save_name,
types_dict=types_dict,
step=step,
max_images_num_per_class=None,
pixel = pixel
)
generated_data = open(json_save_name+f'_step_{step}_beams.json', encoding='utf-8')
generated_data = json.load(generated_data)Beams length distributions
angles.angles_plot_base(data, plot_file_name=json_save_name, step=step, N=10, M=10, indices=[2,0,1], save=False)Rotation angle distribution
N = 10
M = 7
step = 2
saved_image_name='test'
mvee.plot_angles(generated_data,saved_image_name, step, N, M, indices=[3,0,2],save=False)Heatmap
step = 5
names_new={'Ultra_Co11':'AB_Co11_medium',
'Ultra_Co15':'AB_Co15_medium_small',
'Ultra_Co25':'AB_Co25_small',
'Ultra_Co6_2':'AB_Co6_large',
'Ultra_Co8':'AB_Co_8_medium_small'}
mvee.beams_heatmap(generated_data,saved_names=names_new,step=step, indices=[3,0,2], N=7, M=7,save=False, font_size=45, scatter_size=110)Comparison
file_name_1 = 'test_step_5_beams.json'
data_1 = open(file_name_1,encoding='utf-8')
data_1 = json.load(data_1)
# !!!!!
# create corresponding files with different steps mvee.diametr_approx_save
# !!!!!
file_name_2_1='test_step_2_beams.json'
file_name_2_2='test_step_3_beams.json'
file_name_2_3='test_step_4_beams.json'
save_name = 'test.png'
names = [file_name_2_1, file_name_2_2, file_name_2_3]
N = 25
M = 5
columns = f' k,% b,%'
metrics_all=[]
for file_name_2 in names:
save_name=file_name_2.split('/')[-1]
indices_1=[3,0, 2]
indices_2=[2, 0, 1]
print(columns)
data_2 = open(file_name_2,encoding='utf-8')
data_2 = json.load(data_2)
metrics = mvee.mvee_plot_compare(data_1, data_2, save_name, ['b_beams'], N, M, indices_1=indices_1, indices_2=indices_2, save=False)
metrics_all.extend(metrics)
print(columns)
for m in metrics_all:
print(m)