Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save waqaskhan409/1b0fd729d7f8ed305f33835145ca680e to your computer and use it in GitHub Desktop.

Select an option

Save waqaskhan409/1b0fd729d7f8ed305f33835145ca680e to your computer and use it in GitHub Desktop.
from __future__ import print_function
from googleapiclient.discovery import build
from googleapiclient.http import MediaIoBaseDownload
from httplib2 import Http
from oauth2client import file, client, tools
import http
import io
import pandas
from sklearn.cross_validation import train_test_split
import threading as thr
# If modifying these scopes, delete the file token.json.
SCOPES = 'https://www.googleapis.com/auth/drive'
# def main(fileId,fileName):
# """Shows basic usage of the Drive v3 API.
# Prints the names and ids of the first 10 files the user has access to.
# """
# store = file.Storage('token.json')
# creds = store.get()
# if not creds or creds.invalid:
# flow = client.flow_from_clientsecrets('credentials.json', SCOPES)
# creds = tools.run_flow(flow, store)
# service = build('drive', 'v3', http=creds.authorize(Http()))
#
# # Call the Drive v3 API
# results = service.files().list(
# pageSize=10, fields="nextPageToken, files(id, name)").execute()
# items = results.get('files', [])
#
# if not items:
# print('No files found.')
# else:
# file_id = fileId
# request = service.files().get_media(fileId=file_id)
# fh = io.BytesIO()
# downloader = MediaIoBaseDownload(fh, request)
# done = False
# while done is False:
# status, done = downloader.next_chunk()
# print ("Download %d%%." % int(status.progress() * 100))
# with io.open(fileName , 'wb') as f:
# fh.seek(0)
# f.write(fh.read())
def downloadFile(fileId, fileName):
store = file.Storage('token.json')
creds = store.get()
if not creds or creds.invalid:
flow = client.flow_from_clientsecrets('credentials.json', SCOPES)
creds = tools.run_flow(flow, store)
service = build('drive', 'v3', http=creds.authorize(Http()))
file_id = fileId
request = service.files().get_media(fileId=file_id)
fh = io.BytesIO()
downloader = MediaIoBaseDownload(fh, request)
done = False
while done is False:
status, done = downloader.next_chunk()
print ("Download %d%%." % int(status.progress() * 100))
with io.open(fileName , 'wb') as f:
fh.seek(0)
f.write(fh.read())
pass
def definingPath(dataset , pathVar):
path = "E:\\fileMachineLearning\\OrganizeDatasetWateremlon\\"
path = path + pathVar
surface = dataset['Watermelon surface']
top = dataset['Watermelon top side']
inner = dataset['Watermelon inner side']
bot = dataset['Watermelon bottom side']
print(len(surface))
# print(surface.values[0])
for i in range( len(dataset)):
print(i)
leftSideS ,rightSideS = surface.values[i].split("id=")
leftSideI ,rightSideI = inner.values[i].split("id=")
leftSideT ,rightSideT = top.values[i].split("id=")
leftSideB ,rightSideB = bot.values[i].split("id=")
downloadFile(rightSideS , path +"S"+ str(i+1) + ".jpg")
downloadFile(rightSideI , path +"I"+ str(i+1) + ".jpg")
downloadFile(rightSideT , path +"T"+ str(i+1) + ".jpg")
downloadFile(rightSideB , path +"B"+ str(i+1) + ".jpg")
# t1 = thr.Thread(target = downloadFile , args=(rightSideS , path +"S"+ str(i+1) + ".jpg"))
# t2 = thr.Thread(target = downloadFile , args=(rightSideI , path +"I"+ str(i+1) + ".jpg"))
# t3 = thr.Thread(target = downloadFile , args=(rightSideT , path +"T"+ str(i+1) + ".jpg"))
# t4 = thr.Thread(target = downloadFile , args=(rightSideB , path +"B"+ str(i+1) + ".jpg"))
# t1.start()
# t2.start()
# t3.start()
# t4.start()
# downloadFile(rightSideS , path +"S"+ str(i+1) + ".jpg")
# downloadFile(rightSideI , path +"I"+ str(i+1) + ".jpg")
# downloadFile(rightSideT , path +"T"+ str(i+1) + ".jpg")
# downloadFile(rightSideB , path +"B"+ str(i+1) + ".jpg")
def arrangingDataSet():
dataset = pandas.read_csv('e:sampleWatermelon.csv')
surface = dataset['Watermelon surface']
top = dataset['Watermelon top side']
inner = dataset['Watermelon inner side']
bot = dataset['Watermelon bottom side']
path = "E:\\fileMachineLearning\\DataSetWatermelon\\"
print(len(surface))
fileName = dataset.values[0]
for i in range(len(dataset)):
leftSideS ,rightSideS = surface[i].split("id=")
leftSideI ,rightSideI = inner[i].split("id=")
leftSideT ,rightSideT = top[i].split("id=")
leftSideB ,rightSideB = bot[i].split("id=")
pathS = path + "Surface\\"
pathT = path + "Top\\"
pathI = path + "Inner\\"
pathB = path + "Bottom\\"
fileName = dataset.values[i]
newFileName = str(i+1) +","+ str(fileName[5]) +","+ str(fileName[6]) +","+ str(fileName[7]) +","+ str(fileName[8]) +","+ str(fileName[9]) +","+ str(fileName[10]) + "," + str(fileName[11]) + ".jpg"
main(rightSideS , pathS + newFileName)
main(rightSideI , pathI + newFileName)
main(rightSideT , pathT + newFileName)
main(rightSideB , pathB + newFileName)
if __name__ == '__main__' :
dataset = pandas.read_csv('e:updateWatermelon.csv')
# verySweetWaterMelon = dataset[dataset['Watermelon sweetness level'] > 8]
# definingPath(verySweetWaterMelon , 'sweet\\Training\\verySweet\\verySweet')
# t1 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\verySweet\\verySweet'))
# sweetWaterMelon = dataset[dataset['Watermelon sweetness level'] < 9]
# sweetWaterMelon = sweetWaterMelon[sweetWaterMelon['Watermelon sweetness level'] > 5 ]
# print(len(sweetWaterMelon))
# definingPath(sweetWaterMelon , 'sweet\\Training\\sweet\\sweet')
# t2 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\sweet\\sweet'))
# notSweetWaterMelon = dataset[dataset['Watermelon sweetness level'] < 6]
# notSweetWaterMelon = notSweetWaterMelon[notSweetWaterMelon['Watermelon sweetness level'] > 3 ]
# print(len(notSweetWaterMelon))
# definingPath(notSweetWaterMelon , 'sweet\\Training\\notSweet\\notSweet')
# t3 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\notSweet\\notSweet'))
#
# badWaterMelon = dataset[dataset['Watermelon sweetness level'] < 4]
# print(len(badWaterMelon))
# definingPath(badWaterMelon , 'sweet\\Training\\bad\\bad')
# t40 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\bad\\bad'))
#
# rippedWaterMelon = dataset[dataset['Watermelon ripeness level'] > 4]
# print(len(rippedWaterMelon))
# definingPath(rippedWaterMelon , 'Ripe\\Train\\Riped\\riped')
# t41 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\Riped\\riped'))
#
# unRippedWaterMelon = dataset[dataset['Watermelon ripeness level'] < 5]
# print(len(unRippedWaterMelon))
# definingPath(unRippedWaterMelon , 'Ripe\\Train\\unRiped\\unRiped')
# t42 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\unRiped\\unRiped'))
#
# affectedBySurface = dataset[dataset['Watermelon surface color'] == 'yellow (Affected)']
# definingPath(affectedBySurface , 'Affected\\Training\\Affected\\Affected0')
# print(len(affectedBySurface))
# print(affectedBySurface.values[1])
# t50 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\Affected\\Affected0'))
#
# affectedByCondition = dataset[dataset['Watermelon condition'] == 'bad']
# print(len(affectedByCondition))
# definingPath(affectedByCondition , 'Affected\\Training\\Affected\\Affected1')
# t51 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\Affected\\Affected1'))
#
# unAffectedBySurface = dataset[dataset['Watermelon surface color'] != 'yellow (Affected)']
# # definingPath(unAffectedBySurface , 'Affected\\Training\\notAffected\\notAffected0')
# t60 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\notAffected\\notAffected0'))
#
# unAffectedByCondition = dataset[dataset['Watermelon condition'] != 'bad']
# # definingPath(unAffectedByCondition , 'Affected\\Training\\notAffected\\notAffected1')
# t61 = thr.Thread(target = definingPath , args=(sweetWaterMelon , 'sweet\\Training\\notAffected\\notAffected1'))
#
# t1.start()
# t2.start()
# t3.start()
# t40.start()
# t41.start()
# t42.start()
#
# t50.start()
# t51.start()
# t60.start()
# t61.start()
# (trainVerySweetWaterMelon , testVerySweetWaterMelon) , (trainSweetWaterMelon,testSweetWaterMelon) ,
# (trainNotSweetWaterMelon,testNotSweetWaterMelon) , (trainBadWaterMelon,testBadWaterMelon) = train_test_split(verySweetWaterMelon , sweetWaterMelon , notSweetWaterMelon , badWaterMelon);
# affectedWaterMelon = affectedWaterMelon + dataset[dataset['Watermelon surface color'] == 'yellow (Affected)']
# print(sweetWaterMelon)
# url = '1h-Xbt-PRUJZYZlgW-PmAUzqO8MvuE0TZ'
# # print(rightSide)
# downloadFile(url , "E:\\fileMachineLearning\\DataSetWatermelon\\Surface\\top.jpg")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment