In [3]:
from bubbly.extractors import RGBExtractor
from bubbly.dr1 import get_catalog, _on_args
import numpy as np
%pylab
In [147]:
from skimage.morphology import disk
from skimage.filter.rank import autolevel, percentile_autolevel, entropy
class ContrastExtractor(RGBExtractor):
def _extract_rgb(self, rgb):
d = disk(self.shp[0] / 5)
result = rgb
for i in range(3):
result[:, :, i] = percentile_autolevel(result[:,:,i], d, p0=.1, p1=.9)
return result
In [148]:
from skimage.morphology import disk
from skimage.filter.rank import autolevel
cat = get_catalog()
def multiview(args, ex):
shp = ex.shp
ex.shp = (40, 40)
im1 = np.zeros((120, 120, 3), dtype=np.uint8)
im1[:40, :40, :] = ex(int(args[0]), *args)
ex.shp = (120, 120)
im2 = ex(int(args[0]), *args)
b = list(args)
b[-1] *= 2
im3 = ex(int(b[0]), *b)
ex.shp = shp
return np.hstack((im1, im2, im3))
In [152]:
import bubbly.util
reload(bubbly.util)
rcParams['figure.figsize'] = (14, 9)
row = 1
ex = ContrastExtractor()
ex2 = RGBExtractor()
args = list(_on_args(cat, row))
args[0] += .3 * 1
imshow(multiview(args, ex))
show()
imshow(multiview(args, ex2))
Out[152]:
In [ ]: