In [2]:
import cv2
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
In [8]:
afmdata = np.genfromtxt('../Data/BackgroundedTXTFiles/500nmGood-0')
afmdata= afmdata*(10**9)
height, width = afmdata.shape
afmimg=np.zeros((height, width, 3))
In [9]:
factor=(255)/(afmdata.max()-afmdata.min())
for i in range(height):
for j in range(width):
intensity=np.int((afmdata[i][j]-afmdata.min())*factor)
#afmimg[i][j]=np.array([np.int((afmdata[i][j]-afmdata.min())*factor),0,0])
afmimg[i][j]=np.array([intensity, intensity, intensity])
In [16]:
afmimg = np.uint8(afmimg)
grayscaled = cv2.cvtColor(afmimg,cv2.COLOR_BGR2GRAY)
plt.matshow(grayscaled, origin = 'lower', cmap = 'viridis')
Out[16]:
In [56]:
background = cv2.adaptiveThreshold(grayscaled, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 71, 3)
plt.matshow(background, origin = 'lower', cmap = 'viridis')
Out[56]:
In [21]:
backgrounded = grayscaled - background
plt.matshow(backgrounded, origin = 'lower', cmap = 'viridis')
Out[21]:
In [61]:
retval2,threshold2 = cv2.threshold(grayscaled, 0, 255, cv2.THRESH_BINARY+cv2.THRESH_OTSU)
plt.matshow(threshold2, origin = 'lower', cmap = "viridis")
Out[61]:
In [ ]: