首页 > 解决方案 > 根据关联值将图像补丁保存到多个文件夹中

问题描述

我正在尝试将大量图像保存到 5 个不同的文件夹中。排序机制基于与图像相关联的值。到目前为止,我已使用以下代码将其分类到两个文件夹中

if measurements.ni[idx] < 25:
                    pyplot.imsave(project_dir + '/classes/1/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')   
else: 
                pyplot.imsave(project_dir + '/classes/2/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')

该代码将所有值低于 25 的图像放入 1 个文件夹,其余的放入另一个文件夹。

现在我想用 5 个不同范围的文件夹来做到这一点,例如这个不起作用的原始尴尬示例。但我认为这说明了这一点。

       if measurements.ni[idx] < 25:
                pyplot.imsave(project_dir + '/classes/1/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')   
            else if measurements.ni[idx] = (25, 100):
                pyplot.imsave(project_dir + '/classes/2/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')
            else if measurements.ni[idx] = (100, 250):
                pyplot.imsave(project_dir + '/classes/3/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')
            else if measurements.ni[idx] = (250, 800):
                pyplot.imsave(project_dir + '/classes/4/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')
            else if measurements.ni[idx] > 800:
                pyplot.imsave(project_dir + '/classes/5/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')

我该怎么做呢?值范围将是 <25、25-100、100-250、250-800、>800。

谢谢

标签: imagesaving-data

解决方案


我想到了。

 if measurements.ni[idx] < 25:
                    pyplot.imsave(project_dir + '/classes/1/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')   
    if measurements.ni[idx] > 25 < 100:
                    pyplot.imsave(project_dir + '/classes/2/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')
    if measurements.ni[idx] > 100 < 250:
                    pyplot.imsave(project_dir + '/classes/3/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')
    if measurements.ni[idx] > 250 < 800:
                    pyplot.imsave(project_dir + '/classes/4/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')
    if measurements.ni[idx] > 800:
                    pyplot.imsave(project_dir + '/classes/5/' + str(measurements.id_dedup[idx]) + '.png' ,img_patch, format='png')

推荐阅读