2016年7月24日日曜日

開発環境

Elegant Scipy (Juan Nunez-iglesias (著)、Stéfan Van Der Walt (著)、Harriet Dashnow (著)、 O'Reilly Media)のChapter 3.(Networks of Images Regions with ndimage)のExercise (No. 1567)を取り組んでみる。

Exercises 10-12.(No. 1567)

コード(Emacs)

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from skimage import io
from matplotlib import pyplot as plt
import numpy as np


def overlay_grid(image, spacing=128):
    image_gridded = image.copy()
    sq_mask = np.zeros(image.shape[:2], bool)
    sq_mask = np.array([[i % spacing == 0 or j % spacing == 0
                         for j in range(sq_mask.shape[1])]
                        for i in range(sq_mask.shape[0])])
    image_gridded[sq_mask] = [0, 0, 255]
    return image_gridded


if __name__ == '__main__':
    url_astronaut = (
        'https://raw.githubusercontent.com/scikit-image/scikit-image/master/'
        'skimage/data/astronaut.png'
    )
    astro = io.imread(url_astronaut)

    print('Type:', type(astro), 'Shape:', astro.shape, 'Data type:',
          astro.dtype)
    plt.figure(figsize=(5, 5))
    plt.imshow(overlay_grid(astro))    
    plt.savefig('sample11.png')
    plt.imshow(overlay_grid(astro, 50))
    plt.savefig('sample12.png')
    plt.imshow(overlay_grid(astro, spacing=100))
    plt.savefig('sample13.png')

入出力結果(Terminal, IPython)

$ ./sample1.py
Type: <class 'numpy.ndarray'> Shape: (512, 512, 3) Data type: uint8
$

0 コメント:

コメントを投稿