images
This commit is contained in:
1 parent
dd985841b6
commit
d93ae33d92
10 files changed
+69
-90
No files matched your search
+2
-2
@@ -660,7 +660,7 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"source": [
|
"source": [
|
||||||
"img = PILImage.create('images/chapter1_cat_example.jpg')\n",
|
"img = PILImage.create(image_cat())\n",
|
||||||
"img.to_thumb(192)"
|
"img.to_thumb(192)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -730,7 +730,7 @@
|
|||||||
"source": [
|
"source": [
|
||||||
"#hide\n",
|
"#hide\n",
|
||||||
"# For the book, we can't actually click an upload button, so we fake it\n",
|
"# For the book, we can't actually click an upload button, so we fake it\n",
|
||||||
"uploader = SimpleNamespace(data = ['images/chapter1_cat_example.jpg'])"
|
"# uploader = SimpleNamespace(data = ['images/chapter1_cat_example.jpg'])"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2570,7 +2570,7 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"source": [
|
"source": [
|
||||||
"im = image2tensor(Image.open('images/grizzly.jpg'))\n",
|
"im = image2tensor(Image.open(image_bear()))\n",
|
||||||
"im.shape"
|
"im.shape"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
+1
-1
@@ -158,7 +158,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"img = PILImage.create('images/chapter1_cat_example.jpg')\n",
|
"img = PILImage.create(image_cat())\n",
|
||||||
"x, = first(dls.test_dl([img]))"
|
"x, = first(dls.test_dl([img]))"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
+50
-16
@@ -2,7 +2,7 @@
|
|||||||
"cells": [
|
"cells": [
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 4,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
@@ -12,6 +12,15 @@
|
|||||||
"fastbook.setup_book()"
|
"fastbook.setup_book()"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 5,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"from fastbook import *"
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "raw",
|
"cell_type": "raw",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
@@ -52,7 +61,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 6,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
{
|
{
|
||||||
@@ -61,7 +70,7 @@
|
|||||||
"2"
|
"2"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"execution_count": null,
|
"execution_count": 6,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"output_type": "execute_result"
|
"output_type": "execute_result"
|
||||||
}
|
}
|
||||||
@@ -115,7 +124,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 7,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
{
|
{
|
||||||
@@ -124,7 +133,7 @@
|
|||||||
"1.5"
|
"1.5"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"execution_count": null,
|
"execution_count": 7,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"output_type": "execute_result"
|
"output_type": "execute_result"
|
||||||
}
|
}
|
||||||
@@ -296,7 +305,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 8,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
@@ -307,7 +316,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 9,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
@@ -316,7 +325,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 10,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
{
|
{
|
||||||
@@ -325,7 +334,7 @@
|
|||||||
"(1, 2, 4, 8)"
|
"(1, 2, 4, 8)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"execution_count": null,
|
"execution_count": 10,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"output_type": "execute_result"
|
"output_type": "execute_result"
|
||||||
}
|
}
|
||||||
@@ -340,12 +349,12 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 11,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
{
|
{
|
||||||
"data": {
|
"data": {
|
||||||
"image/png": "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 truncated
|
"image/png": "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 truncated
|
||||||
"text/plain": [
|
"text/plain": [
|
||||||
"<Figure size 432x288 with 1 Axes>"
|
"<Figure size 432x288 with 1 Axes>"
|
||||||
]
|
]
|
||||||
@@ -370,23 +379,23 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 9,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
{
|
{
|
||||||
"data": {
|
"data": {
|
||||||
"image/png": "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 truncated
|
"image/png": "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 truncated
|
||||||
"text/plain": [
|
"text/plain": [
|
||||||
"<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=394x500 at 0x7F689F7B16D0>"
|
"<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=197x250 at 0x7F3E279ABE50>"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"execution_count": null,
|
"execution_count": 9,
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"output_type": "execute_result"
|
"output_type": "execute_result"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"source": [
|
"source": [
|
||||||
"Image.open('images/chapter1_cat_example.jpg')"
|
"Image.open(image_cat())"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -542,6 +551,31 @@
|
|||||||
"display_name": "Python 3",
|
"display_name": "Python 3",
|
||||||
"language": "python",
|
"language": "python",
|
||||||
"name": "python3"
|
"name": "python3"
|
||||||
|
},
|
||||||
|
"language_info": {
|
||||||
|
"codemirror_mode": {
|
||||||
|
"name": "ipython",
|
||||||
|
"version": 3
|
||||||
|
},
|
||||||
|
"file_extension": ".py",
|
||||||
|
"mimetype": "text/x-python",
|
||||||
|
"name": "python",
|
||||||
|
"nbconvert_exporter": "python",
|
||||||
|
"pygments_lexer": "ipython3",
|
||||||
|
"version": "3.7.7"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"base_numbering": 1,
|
||||||
|
"nav_menu": {},
|
||||||
|
"number_sections": false,
|
||||||
|
"sideBar": true,
|
||||||
|
"skip_h1_title": true,
|
||||||
|
"title_cell": "Table of Contents",
|
||||||
|
"title_sidebar": "Contents",
|
||||||
|
"toc_cell": false,
|
||||||
|
"toc_position": {},
|
||||||
|
"toc_section_display": true,
|
||||||
|
"toc_window_display": false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nbformat": 4,
|
"nbformat": 4,
|
||||||
|
|||||||
@@ -133,7 +133,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"img = PILImage.create('images/chapter1_cat_example.jpg')\n",
|
"img = PILImage.create(image_cat())\n",
|
||||||
"img.to_thumb(192)"
|
"img.to_thumb(192)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -162,7 +162,7 @@
|
|||||||
"source": [
|
"source": [
|
||||||
"#hide\n",
|
"#hide\n",
|
||||||
"# For the book, we can't actually click an upload button, so we fake it\n",
|
"# For the book, we can't actually click an upload button, so we fake it\n",
|
||||||
"uploader = SimpleNamespace(data = ['images/chapter1_cat_example.jpg'])"
|
"# uploader = SimpleNamespace(data = ['images/chapter1_cat_example.jpg'])"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -472,7 +472,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"im = image2tensor(Image.open('images/grizzly.jpg'))\n",
|
"im = image2tensor(Image.open(image_bear()))\n",
|
||||||
"im.shape"
|
"im.shape"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
+1
-1
@@ -57,7 +57,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"img = PILImage.create('images/chapter1_cat_example.jpg')\n",
|
"img = PILImage.create(image_cat())\n",
|
||||||
"x, = first(dls.test_dl([img]))"
|
"x, = first(dls.test_dl([img]))"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
+11
-2
@@ -7,11 +7,20 @@
|
|||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"#hide\n",
|
"#hide\n",
|
||||||
"!pip install -Uqq fastbook\n",
|
"# !pip install -Uqq fastbook\n",
|
||||||
"import fastbook\n",
|
"import fastbook\n",
|
||||||
"fastbook.setup_book()"
|
"fastbook.setup_book()"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": null,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"from fastbook import *"
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "markdown",
|
"cell_type": "markdown",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
@@ -149,7 +158,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"Image.open('images/chapter1_cat_example.jpg')"
|
"Image.open(image_cat())"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,64 +0,0 @@
|
|||||||
# Numpy and pandas by default assume a narrow screen - this fixes that
|
|
||||||
from fastai.vision.all import *
|
|
||||||
from nbdev.showdoc import *
|
|
||||||
from ipywidgets import widgets
|
|
||||||
from pandas.api.types import CategoricalDtype
|
|
||||||
|
|
||||||
import matplotlib as mpl
|
|
||||||
# mpl.rcParams['figure.dpi']= 200
|
|
||||||
mpl.rcParams['savefig.dpi']= 200
|
|
||||||
mpl.rcParams['font.size']=12
|
|
||||||
|
|
||||||
set_seed(42)
|
|
||||||
torch.backends.cudnn.deterministic = True
|
|
||||||
torch.backends.cudnn.benchmark = False
|
|
||||||
pd.set_option('display.max_columns',999)
|
|
||||||
np.set_printoptions(linewidth=200)
|
|
||||||
torch.set_printoptions(linewidth=200)
|
|
||||||
|
|
||||||
import graphviz
|
|
||||||
def gv(s): return graphviz.Source('digraph G{ rankdir="LR"' + s + '; }')
|
|
||||||
|
|
||||||
def get_image_files_sorted(path, recurse=True, folders=None): return get_image_files(path, recurse, folders).sorted()
|
|
||||||
|
|
||||||
|
|
||||||
# +
|
|
||||||
# pip install azure-cognitiveservices-search-imagesearch
|
|
||||||
|
|
||||||
from azure.cognitiveservices.search.imagesearch import ImageSearchClient as api
|
|
||||||
from msrest.authentication import CognitiveServicesCredentials as auth
|
|
||||||
|
|
||||||
def search_images_bing(key, term, min_sz=128):
|
|
||||||
client = api('https://api.cognitive.microsoft.com', auth(key))
|
|
||||||
return L(client.images.search(query=term, count=150, min_height=min_sz, min_width=min_sz).value)
|
|
||||||
|
|
||||||
|
|
||||||
# -
|
|
||||||
|
|
||||||
def plot_function(f, tx=None, ty=None, title=None, min=-2, max=2, figsize=(6,4)):
|
|
||||||
x = torch.linspace(min,max)
|
|
||||||
fig,ax = plt.subplots(figsize=figsize)
|
|
||||||
ax.plot(x,f(x))
|
|
||||||
if tx is not None: ax.set_xlabel(tx)
|
|
||||||
if ty is not None: ax.set_ylabel(ty)
|
|
||||||
if title is not None: ax.set_title(title)
|
|
||||||
|
|
||||||
# +
|
|
||||||
from sklearn.tree import export_graphviz
|
|
||||||
|
|
||||||
def draw_tree(t, df, size=10, ratio=0.6, precision=0, **kwargs):
|
|
||||||
s=export_graphviz(t, out_file=None, feature_names=df.columns, filled=True, rounded=True,
|
|
||||||
special_characters=True, rotate=False, precision=precision, **kwargs)
|
|
||||||
return graphviz.Source(re.sub('Tree {', f'Tree {{ size={size}; ratio={ratio}', s))
|
|
||||||
|
|
||||||
|
|
||||||
# +
|
|
||||||
from scipy.cluster import hierarchy as hc
|
|
||||||
|
|
||||||
def cluster_columns(df, figsize=(10,6), font_size=12):
|
|
||||||
corr = np.round(scipy.stats.spearmanr(df).correlation, 4)
|
|
||||||
corr_condensed = hc.distance.squareform(1-corr)
|
|
||||||
z = hc.linkage(corr_condensed, method='average')
|
|
||||||
fig = plt.figure(figsize=figsize)
|
|
||||||
hc.dendrogram(z, labels=df.columns, orientation='left', leaf_font_size=font_size)
|
|
||||||
plt.show()
|
|
||||||
Binary file not shown.
Reference in new issue
Block a user