Esempio n. 1
0
    def get_exceptions(self) -> List[ParseException]:
        filenames = get_all_filenames(self._EXCEPTIONS_FOLDER)
        exceptions = []

        for filename in filenames:
            with open(filename, 'rb') as f:
                exceptions += pickle.load(f)
        return exceptions
    def execute(self):
        print("\n/////////\n/// MainFeatureExtracter part\n/////////")

        folder_path = self.store.get_html_folder()
        all_filenames = get_all_filenames(folder_path)

        for filename in all_filenames:
            flat_list = self.extract(filename)
            self.store.save_to_csv(flat_list, filename)
            print("Filename {} converted to csv.".format(filename))
    def execute(self):
        print("\n/////////\n/// AreaGetter part\n/////////")

        folder_path = context.store.get_csv_folder()
        all_filenames = get_all_filenames(folder_path)

        for filename in all_filenames:
            self.transform(filename)
            print("Filename {} was been transformed by openstreetmap.".format(
                filename))
    def show_off(self, index_off=None):
        filepath = "{0}/docs/SIMPLEX_TREES/".format(utils.get_module_path())
        all_off_files = utils.get_all_filenames(root_path=filepath,
                                                file_pattern=".off")

        if len(all_off_files) == 0:
            return

        if index_off is None or index_off < 0 or len(
                all_off_files) - 1 < index_off:
            file_name = all_off_files[-1]
        else:
            file_name = all_off_files[index_off]

        os.system("geomview {0}".format(all_off_files[index_off]))
Esempio n. 5
0
def get_mask(mask_size, polygons):
    '''
    Построение бинарной маски для спутникового снимка
    @param mask_size размер маски
    @param @polygons набор полигонов
    @return сгенерированная бинарнаяя маска в виде картинки
    '''
    mask = Image.new('1', mask_size)
    for pol in polygons:
        d = ImageDraw.Draw(mask)
        d.polygon(pol, fill=1)
    return mask


filenames = utils.get_all_filenames(JSON_PATH)
print('Images for marking:\t{}'.format(len(filenames)))
json_files = list(
    map(lambda s: os.path.join(JSON_PATH, s + '.json'),
        filenames))  # список всех json-файлов с разметкой
img_files = list(
    map(lambda s: os.path.join(IMG_PATH, s + '.jpg'),
        filenames))  # список всех спутниковых снимков для разметки
if os.path.exists(MASK_PATH):
    shutil.rmtree(MASK_PATH)
    print('Clean folder old masks')
os.makedirs(MASK_PATH)
print('Create masks:')
for idx in range(len(filenames)):  # генерация масок
    img = Image.open(img_files[idx])
    polygons = get_marking_polygons(read_marking(json_files[idx]))
Esempio n. 6
0
    def execute(self):
        print("\n/////////\n/// Aggregator part\n/////////")

        folder_path = context.store.get_csv_folder()
        all_filenames = get_all_filenames(folder_path)
        self.__aggregate(all_filenames)
Esempio n. 7
0
                img_slice = img.crop((i, j, i+SAMPLE_SIDE, j+SAMPLE_SIDE))
                mask_slice = mask.crop((i, j, i+SAMPLE_SIDE, j+SAMPLE_SIDE))
                img_slice.save(os.path.join(IMG_SAMPLES, filenames[idx] + '_{:0>5}.jpg'.format(STAGE)))
                mask_slice.save(os.path.join(MASK_SAMPLES, filenames[idx] + '_{:0>5}.png'.format(STAGE)))
                STAGE = STAGE + 1
                x_samples.append(np.asarray(img_slice))
                y_samples.append(np.asarray(mask_slice))
        print('{}/{} samples are sliced'.format(idx+1, len(filenames)))
    print('Slicing are finished!')
    return np.asarray(x_samples), np.asarray(y_samples)[..., np.newaxis]


def save_npy_samples(x_samples, y_samples):
    '''
    Сохранение выборок в npy-файлах
    @param x_samples 
    @param y_samples
    '''
    np.save(os.path.join(NPY_PATH, 'x_samples.npy'), x_samples)
    np.save(os.path.join(NPY_PATH, 'y_samples.npy'), y_samples)
    print('NPY-files are saved!')


filenames = utils.get_all_filenames(MASK_PATH)
print('Images for slicing:\t{}'.format(len(filenames)))
img_files = list(map(lambda s: os.path.join(IMG_PATH, s+'.jpg'), filenames)) # список спутниковых снимков
mask_files = list(map(lambda s: os.path.join(MASK_PATH, s+'.png'), filenames)) # список соответствующих бинарных масок
clean_slicing_folders()
x_samples, y_samples = slice_samples(img_files, mask_files)
print('NPY-files are formed!')
save_npy_samples(x_samples, y_samples)