You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

57 lines
1.4 KiB

import numpy as np
from PIL import Image
import matplotlib.pyplot as plt
import os
from skimage import io
from skimage import color
from skimage import filters
def imgFileToData(path):
image = Image.open(path)
image_data = np.asarray(image)
return image_data
def imgFileToData2(path):
img = io.imread(path)
return img
def detectObj(image_data):
#image_data_blue = image_data[:,:,2]
image_data_blue = color.rgb2grey(image_data)
#image_data_blue = threshold(image_data)
median_blue = np.median(image_data_blue)
print median_blue
median_blue = median_blue - median_blue/1.5
print median_blue
print image_data_blue
non_empty_columns = np.where(image_data_blue.min(axis=0)<median_blue)[0]
non_empty_rows = np.where(image_data_blue.min(axis=1)<median_blue)[0]
boundingBox = (min(non_empty_rows), max(non_empty_rows), min(non_empty_columns), max(non_empty_columns))
print boundingBox
return boundingBox
def threshold(img):
#img = color.rgb2grey(img)
#img = img[:,:,2]
img = color.rgb2grey(img)
thresh = filters.threshold_mean(img)
binary = img > thresh
return binary
def prova(img):
#return color.rgb2grey(img)
return img
def crop(image_data, box):
return image_data[box[0]:box[1], box[2]:box[3]]
def saveDataToImageFile(data, filename):
image = Image.fromarray(data)
image.save(filename)