zoukankan      html  css  js  c++  java
  • 利用分块进行网络输入测试

    在进行神经网络测试时,可以

    1. 直接将图像作为输入从而进行测试
    2. 利用图片分块,然后送进网络进行一个测试后进行合成

    对于方法二,我们可以看看以下操作:

    Snipaste_2020-11-17_20-43-18

    进行放大查看我们的merge后的结果,可以发现,虽然超分结果也是2048*2048pixel但是会合并出来的交界处的横线,严重影响评估效果。

    Snipaste_2020-11-17_20-36-35

    图像分块合成的python代码如下:

    import PIL.Image as Image
    import os
    
    IMAGES_PATH = r'D:\result\X4\patch\'
    IMAGES_FORMAT = ['.jpg', '.tif'] 
    IMAGE_SIZE = 512
    IMAGE_ROW = 4 
    IMAGE_COLUMN = 4
    IMAGE_SAVE_PATH = r'D:\result\X4\merged1.tif'
    
    image_names = [name for name in os.listdir(IMAGES_PATH) for item in IMAGES_FORMAT if
                   os.path.splitext(name)[1] == item]
    
    print(image_names)
    if len(image_names) != IMAGE_ROW * IMAGE_COLUMN:
        raise ValueError("合成图片的参数和要求的数量不能匹配!")
    
    def image_compose():
        to_image = Image.new('RGB', (IMAGE_COLUMN * IMAGE_SIZE, IMAGE_ROW * IMAGE_SIZE)) 
       
        i = 1
        for x in range(1, IMAGE_COLUMN + 1):   # 此处要注意根据自己的分块修改
           for y in range(1, IMAGE_ROW + 1):
                from_image = Image.open(IMAGES_PATH + str(i) + '.tif').resize(
                    (IMAGE_SIZE, IMAGE_SIZE), Image.ANTIALIAS)
                to_image.paste(from_image, ((x - 1) * IMAGE_SIZE, (y - 1) * IMAGE_SIZE))
                i = i + 1
        return to_image.save(IMAGE_SAVE_PATH)  
    
    
    image_compose()  
    
  • 相关阅读:
    ubuntu安装docker-compose
    docker-compose常用命令(持续更新...)
    docker运行jpress
    gcc -o选项:指定输出文件
    gcc -c:只编译不链接,仅生成目标文件
    WMWare下安装centOS7,并使用xshell进行连接记录.
    主线程和子线程多种情况小探讨
    Sleep的本质
    为什么要对多线程进行加锁操作呢
    list操作相关总结
  • 原文地址:https://www.cnblogs.com/zgqcn/p/13996405.html
Copyright © 2011-2022 走看看