Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- #-*- coding:utf-8 -*-
- import sys
- import numpy as np
- from scipy.ndimage import imread, zoom
- from matplotlib import pyplot as plt
- sys.path.insert(0, '/home/sebastiaan/Tmp/texture/scikit-image/')
- from skimage.measure import block_reduce
- im = imread('4.png', flatten=True)
- im = im != 255
- for z in np.arange(1000,1,-1):
- print 'Downsample by %d' % z
- im2 = block_reduce(im, (z,z), func=np.min)
- if True not in im2:
- continue
- l = np.where(im2 == 1)
- row = l[0][0]
- col = l[1][0]
- minY = int(row*z)
- maxY = int((row+1)*z)
- minX = int(col*z)
- maxX = int((col+1)*z)
- surface = (maxX-minX)*(maxY-minY)
- print '(%d, %d) -> (%d, %d), surface = %d' % (minX, minY, maxX, maxY, \
- surface)
- plt.subplot(211)
- plt.imshow(im)
- plt.axhline(minY, color='white')
- plt.axhline(maxY, color='white')
- plt.axvline(minX, color='white')
- plt.axvline(maxX, color='white')
- plt.subplot(212)
- plt.imshow(im2)
- plt.show()
- break
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement