import sys
# maksymalnia wartość liczby całkowitej 64 bitowej
print(sys.maxsize)
amax=amax=2**63 -1
print(amax,type(amax))
# przekraczamy wartość maksymalną, czy pojawi się błąd ?
amax=2**128 # dwa do potegi 128, całkiem duża liczba
print(amax,type(amax)) # nadal typu int
# rozszerzanie on demand
# mały przedsmak wykorzystania pętli for
x=256
for i in range(1,6):
x=x*x
print ("size:", x.__sizeof__(), "value:", x)
9223372036854775807 9223372036854775807 <class 'int'> 340282366920938463463374607431768211456 <class 'int'> size: 28 value: 65536 size: 32 value: 4294967296 size: 36 value: 18446744073709551616 size: 44 value: 340282366920938463463374607431768211456 size: 60 value: 115792089237316195423570985008687907853269984665640564039457584007913129639936
#liczymy PI
import math
print(math.pi)
3.141592653589793
https://stackoverflow.com/questions/9004789/1000-digits-of-pi-in-python
# mozna tak
def make_pi():
q, r, t, k, m, x = 1, 0, 1, 1, 3, 3
for j in range(10000):
if 4 * q + r - t < m * t:
yield m
q, r, t, k, m, x = 10*q, 10*(r-m*t), t, k, (10*(3*q+r))//t - 10*m, x
else:
q, r, t, k, m, x = q*k, (2*q+r)*x, t*x, k+1, (q*(7*k+2)+r*x)//(t*x), x+2
my_array = []
for i in make_pi():
my_array.append(str(i))
my_array = my_array[:1] + ['.'] + my_array[1:]
big_string = "".join(my_array)
print ("Nasze pi z dokladnościa do ",len(big_string)-2, " miejsc po przecinku:" , big_string )
Nasze pi z dokladnościa do 2315 miejsc po przecinku: 3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196442881097566593344612847564823378678316527120190914564856692346034861045432664821339360726024914127372458700660631558817488152092096282925409171536436789259036001133053054882046652138414695194151160943305727036575959195309218611738193261179310511854807446237996274956735188575272489122793818301194912983367336244065664308602139494639522473719070217986094370277053921717629317675238467481846766940513200056812714526356082778577134275778960917363717872146844090122495343014654958537105079227968925892354201995611212902196086403441815981362977477130996051870721134999999837297804995105973173281609631859502445945534690830264252230825334468503526193118817101000313783875288658753320838142061717766914730359825349042875546873115956286388235378759375195778185778053217122680661300192787661119590921642019893809525720106548586327886593615338182796823030195203530185296899577362259941389124972177528347913151557485724245415069595082953311686172785588907509838175463746493931925506040092770167113900984882401285836160356370766010471018194295559619894676783744944825537977472684710404753464620804668425906949129331367702898915210475216205696602405803815019351125338243003558764024749647326391419927260426992279678235478163600934172164121992458631503028618297455570674983850549458858692699569092721079750930295532116534498720275596023648066549911988183479775356636980742654252786255181841757467289097777279380008164706001614524919217321721477235014144197356854816136115735255213347574184946843852332390739414333454776241686251898356948556209921922218427255025425688767179049460165346680498862723279178608578438382796797668145410095388378636095068006422512520511739298489608412848862694560424196528502221066118630674427862203919494504712371378696095636437191728746776465757396241389086583264599581339047802759009946576407895126946839835259570982582262052248940772671947826848260147699090264013639443745530506820349625245174939965143142980919065925093722169646151570985838741059788595977297549893016175392846813826868386894277415599185592524595395943104997252468084598727364469584865383673622262609912460805124388439045124413654
# sila pythona mnostwo gotowych biobiotek
try:
# import version included with old SymPy
from sympy.mpmath import mp
except ImportError:
# import newer version
from mpmath import mp
mp.dps = 1000 # set number of digits
print(mp.pi) # print pi to a thousand places
3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609433057270365759591953092186117381932611793105118548074462379962749567351885752724891227938183011949129833673362440656643086021394946395224737190702179860943702770539217176293176752384674818467669405132000568127145263560827785771342757789609173637178721468440901224953430146549585371050792279689258923542019956112129021960864034418159813629774771309960518707211349999998372978049951059731732816096318595024459455346908302642522308253344685035261931188171010003137838752886587533208381420617177669147303598253490428755468731159562863882353787593751957781857780532171226806613001927876611195909216420199
#instalujemy pakiet folium
!pip install folium
Requirement already satisfied: folium in /usr/local/lib/python3.6/dist-packages (0.2.1) Requirement already satisfied: Jinja2 in /usr/local/lib/python3.6/dist-packages (from folium) (2.10) Requirement already satisfied: MarkupSafe>=0.23 in /usr/local/lib/python3.6/dist-packages (from Jinja2->folium) (1.1.1)
# importujemy pakiet folium
import folium
# konfiguracja obiektu mapy
mapa = folium.Map(location=[52.325, 18.94], zoom_start=6)
# wyswietlamy mape
mapa
# pobierzmy przyklady z repozytorium Githuba
!git clone https://github.com/python-visualization/folium.git
Cloning into 'folium'... remote: Enumerating objects: 46, done. remote: Counting objects: 100% (46/46), done. remote: Compressing objects: 100% (29/29), done. remote: Total 6754 (delta 26), reused 30 (delta 17), pack-reused 6708 Receiving objects: 100% (6754/6754), 77.22 MiB | 21.63 MiB/s, done. Resolving deltas: 100% (4584/4584), done.
#!ls
import os
os.chdir("/content/")
os.chdir("folium/")
os.chdir("examples/")
!ls
# https://github.com/python-visualization/folium/blob/master/examples/Quickstart.ipynb
CheckZorder.ipynb plugin-Draw.ipynb Colormaps.ipynb plugin-DualMap.ipynb ContinuousWorld.ipynb plugin-MeasureControl.ipynb ControlScale.ipynb plugin-MousePosition.ipynb CustomIcon.ipynb plugin-patterns.ipynb data plugin-Search.ipynb FeatureGroup.ipynb Plugins.ipynb Features.ipynb Polygons_from_list_of_points.ipynb FloatImage.ipynb PolyLineTextPath_AntPath.ipynb Folium_and_mplleaflet.ipynb Popups.ipynb GeodedeticImageOverlay.ipynb Quickstart.ipynb GeoJSON_and_choropleth.ipynb results GeoJSONWithoutTitles.ipynb Rotate_icon.ipynb Geopandas_and_geo_interface.ipynb SmoothFactor.ipynb Heatmap.ipynb TilesExample.ipynb HeatMapWithTime.ipynb TimeSliderChoropleth.ipynb Highlight_Function.ipynb VectorLayers.ipynb ImageOverlay.ipynb VideoOverlayLayer.ipynb MarkerCluster.ipynb WidthHeight.ipynb MiniMap.ipynb WMS_and_WMTS.ipynb MinMaxLimits.ipynb WmsTimeDimension.ipynb
# na podstawie https://github.com/python-visualization/folium/blob/master/examples/Quickstart.ipynb
import folium
m = folium.Map(location=[45.5236, -122.6750])
m
m = folium.Map(
location=[45.372, -121.6972],
zoom_start=12,
tiles='Stamen Terrain'
)
folium.Marker(
location=[45.3288, -121.6625],
popup='Mt. Hood Meadows',
icon=folium.Icon(icon='cloud')
).add_to(m)
folium.Marker(
location=[45.3311, -121.7113],
popup='Timberline Lodge',
icon=folium.Icon(color='green')
).add_to(m)
folium.Marker(
location=[45.3300, -121.6823],
popup='Some Other Location',
icon=folium.Icon(color='red', icon='info-sign')
).add_to(m)
m
import os
vis1 = os.path.join('data', 'vis1.json')
vis2 = os.path.join('data', 'vis2.json')
vis3 = os.path.join('data', 'vis3.json')
import json
m = folium.Map(
location=[46.3014, -123.7390],
zoom_start=7,
tiles='Stamen Terrain'
)
folium.Marker(
location=[47.3489, -124.708],
popup=folium.Popup(max_width=450).add_child(
folium.Vega(json.load(open(vis1)), width=450, height=250))
).add_to(m)
folium.Marker(
location=[44.639, -124.5339],
popup=folium.Popup(max_width=450).add_child(
folium.Vega(json.load(open(vis2)), width=450, height=250))
).add_to(m)
folium.Marker(
location=[46.216, -124.1280],
popup=folium.Popup(max_width=450).add_child(
folium.Vega(json.load(open(vis3)), width=450, height=250))
).add_to(m)
m
antarctic_ice_edge = os.path.join('data', 'antarctic_ice_edge.json')
antarctic_ice_shelf_topo = os.path.join('data', 'antarctic_ice_shelf_topo.json')
m = folium.Map(
location=[-59.1759, -11.6016],
tiles='Mapbox Bright',
zoom_start=2
)
folium.GeoJson(
antarctic_ice_edge,
name='geojson'
).add_to(m)
folium.TopoJson(
open(antarctic_ice_shelf_topo),
'objects.antarctic_ice_shelf',
name='topojson'
).add_to(m)
folium.LayerControl().add_to(m)
m
#!pip install branca
import branca
import pandas as pd
county_data = os.path.join('data', 'us_county_data.csv')
county_geo = os.path.join('data', 'us_counties_20m_topo.json')
df = pd.read_csv(county_data, na_values=[' '])
colorscale = branca.colormap.linear.YlOrRd_09.scale(0, 50e3)
employed_series = df.set_index('FIPS_Code')['Employed_2011']
def style_function(feature):
employed = employed_series.get(int(feature['id'][-5:]), None)
return {
'fillOpacity': 0.5,
'weight': 0,
'fillColor': '#black' if employed is None else colorscale(employed)
}
m = folium.Map(
location=[48, -102],
tiles='cartodbpositron',
zoom_start=3
)
folium.TopoJson(
open(county_geo),
'objects.us_counties_20m',
style_function=style_function
).add_to(m)
m
colorscale = branca.colormap.linear.YlGnBu_09.scale(0, 30)
employed_series = df.set_index('FIPS_Code')['Unemployment_rate_2011']
def style_function(feature):
employed = employed_series.get(int(feature['id'][-5:]), None)
return {
'fillOpacity': 0.5,
'weight': 0,
'fillColor': '#black' if employed is None else colorscale(employed)
}
m = folium.Map(
location=[48, -102],
tiles='cartodbpositron',
zoom_start=3
)
folium.TopoJson(
open(county_geo),
'objects.us_counties_20m',
style_function=style_function
).add_to(m)
m
# na podstawie https://geek.justjoin.it/rozpoznac-obiekty-ze-zdjecia-wystarczy-10-linii-kodu-pythonie/
# Tensorflow
!pip install tensorflow
# Numpy
!pip install numpy
# SciPy
!pip install scipy
# OpenCV
!pip install opencv-python
# Pillow
!pip install pillow
# Matplotlib
!pip install matplotlib
# H5py
!pip install h5py
# Keras
!pip install keras
Requirement already satisfied: tensorflow in /usr/local/lib/python3.6/dist-packages (1.13.1) Requirement already satisfied: astor>=0.6.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (0.7.1) Requirement already satisfied: keras-applications>=1.0.6 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (1.0.7) Requirement already satisfied: grpcio>=1.8.6 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (1.15.0) Requirement already satisfied: gast>=0.2.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (0.2.2) Requirement already satisfied: numpy>=1.13.3 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (1.14.6) Requirement already satisfied: tensorboard<1.14.0,>=1.13.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (1.13.1) Requirement already satisfied: termcolor>=1.1.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (1.1.0) Requirement already satisfied: wheel>=0.26 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (0.33.1) Requirement already satisfied: keras-preprocessing>=1.0.5 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (1.0.9) Requirement already satisfied: tensorflow-estimator<1.14.0rc0,>=1.13.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (1.13.0) Requirement already satisfied: absl-py>=0.1.6 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (0.7.0) Requirement already satisfied: protobuf>=3.6.1 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (3.7.0) Requirement already satisfied: six>=1.10.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow) (1.11.0) Requirement already satisfied: h5py in /usr/local/lib/python3.6/dist-packages (from keras-applications>=1.0.6->tensorflow) (2.8.0) Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.6/dist-packages (from tensorboard<1.14.0,>=1.13.0->tensorflow) (3.0.1) Requirement already satisfied: werkzeug>=0.11.15 in /usr/local/lib/python3.6/dist-packages (from tensorboard<1.14.0,>=1.13.0->tensorflow) (0.14.1) Requirement already satisfied: mock>=2.0.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow-estimator<1.14.0rc0,>=1.13.0->tensorflow) (2.0.0) Requirement already satisfied: setuptools in /usr/local/lib/python3.6/dist-packages (from protobuf>=3.6.1->tensorflow) (40.8.0) Requirement already satisfied: pbr>=0.11 in /usr/local/lib/python3.6/dist-packages (from mock>=2.0.0->tensorflow-estimator<1.14.0rc0,>=1.13.0->tensorflow) (5.1.3) Requirement already satisfied: numpy in /usr/local/lib/python3.6/dist-packages (1.14.6) Requirement already satisfied: scipy in /usr/local/lib/python3.6/dist-packages (1.1.0) Requirement already satisfied: numpy>=1.8.2 in /usr/local/lib/python3.6/dist-packages (from scipy) (1.14.6) Requirement already satisfied: opencv-python in /usr/local/lib/python3.6/dist-packages (3.4.5.20) Requirement already satisfied: numpy>=1.11.3 in /usr/local/lib/python3.6/dist-packages (from opencv-python) (1.14.6) Requirement already satisfied: pillow in /usr/local/lib/python3.6/dist-packages (4.1.1) Requirement already satisfied: olefile in /usr/local/lib/python3.6/dist-packages (from pillow) (0.46) Requirement already satisfied: matplotlib in /usr/local/lib/python3.6/dist-packages (3.0.3) Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib) (2.5.3) Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib) (1.0.1) Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.6/dist-packages (from matplotlib) (0.10.0) Requirement already satisfied: numpy>=1.10.0 in /usr/local/lib/python3.6/dist-packages (from matplotlib) (1.14.6) Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib) (2.3.1) Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.6/dist-packages (from python-dateutil>=2.1->matplotlib) (1.11.0) Requirement already satisfied: setuptools in /usr/local/lib/python3.6/dist-packages (from kiwisolver>=1.0.1->matplotlib) (40.8.0) Requirement already satisfied: h5py in /usr/local/lib/python3.6/dist-packages (2.8.0) Requirement already satisfied: numpy>=1.7 in /usr/local/lib/python3.6/dist-packages (from h5py) (1.14.6) Requirement already satisfied: six in /usr/local/lib/python3.6/dist-packages (from h5py) (1.11.0) Requirement already satisfied: keras in /usr/local/lib/python3.6/dist-packages (2.2.4) Requirement already satisfied: keras-preprocessing>=1.0.5 in /usr/local/lib/python3.6/dist-packages (from keras) (1.0.9) Requirement already satisfied: numpy>=1.9.1 in /usr/local/lib/python3.6/dist-packages (from keras) (1.14.6) Requirement already satisfied: six>=1.9.0 in /usr/local/lib/python3.6/dist-packages (from keras) (1.11.0) Requirement already satisfied: keras-applications>=1.0.6 in /usr/local/lib/python3.6/dist-packages (from keras) (1.0.7) Requirement already satisfied: scipy>=0.14 in /usr/local/lib/python3.6/dist-packages (from keras) (1.1.0) Requirement already satisfied: pyyaml in /usr/local/lib/python3.6/dist-packages (from keras) (3.13) Requirement already satisfied: h5py in /usr/local/lib/python3.6/dist-packages (from keras) (2.8.0)
# pobieramy biblioteke z Githuba
!pip install https://github.com/OlafenwaMoses/ImageAI/releases/download/2.0.1/imageai-2.0.1-py3-none-any.whl
Collecting imageai==2.0.1 from https://github.com/OlafenwaMoses/ImageAI/releases/download/2.0.1/imageai-2.0.1-py3-none-any.whl Downloading https://github.com/OlafenwaMoses/ImageAI/releases/download/2.0.1/imageai-2.0.1-py3-none-any.whl (137kB) 100% |████████████████████████████████| 143kB 1.2MB/s Installing collected packages: imageai Successfully installed imageai-2.0.1
# pobieramy model sieci neuronowej
!wget https://github.com/OlafenwaMoses/ImageAI/releases/download/1.0/resnet50_coco_best_v2.0.1.h5
--2019-03-15 20:29:08-- https://github.com/OlafenwaMoses/ImageAI/releases/download/1.0/resnet50_coco_best_v2.0.1.h5 Resolving github.com (github.com)... 140.82.118.3, 140.82.118.4 Connecting to github.com (github.com)|140.82.118.3|:443... connected. HTTP request sent, awaiting response... 302 Found Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/125932201/e7ab678c-6146-11e8-85cc-26bc1cd06ab0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190315%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190315T202909Z&X-Amz-Expires=300&X-Amz-Signature=625633742ec461e82f607f896103440b1ce70fe4902643a2c864be206aa9f631&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dresnet50_coco_best_v2.0.1.h5&response-content-type=application%2Foctet-stream [following] --2019-03-15 20:29:09-- https://github-production-release-asset-2e65be.s3.amazonaws.com/125932201/e7ab678c-6146-11e8-85cc-26bc1cd06ab0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190315%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190315T202909Z&X-Amz-Expires=300&X-Amz-Signature=625633742ec461e82f607f896103440b1ce70fe4902643a2c864be206aa9f631&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dresnet50_coco_best_v2.0.1.h5&response-content-type=application%2Foctet-stream Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.84.0 Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.84.0|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 152661008 (146M) [application/octet-stream] Saving to: ‘resnet50_coco_best_v2.0.1.h5’ resnet50_coco_best_ 100%[===================>] 145.59M 36.3MB/s in 4.5s 2019-03-15 20:29:14 (32.2 MB/s) - ‘resnet50_coco_best_v2.0.1.h5’ saved [152661008/152661008]
# pobieramy przykladowe obrazy
!wget https://geek.justjoin.it/wp-content/uploads/2018/08/1-przed.jpeg
!wget https://static.polskieszlaki.pl/zdjecia/wycieczki/2014-11/lowicz-247756.jpg
!wget https://2.bp.blogspot.com/-7zWsmytmvi0/Wu4JROjYiqI/AAAAAAAAYk8/Xa-tF8qe8IM54LXQzeQVMfv-xuktZpXtgCLcBGAs/s1600/DSC04790%2B2.jpg
!wget http://www.polskaniezwykla.pl/pictures/original/269643.jpg
!wget http://lok.art.pl/wp-content/uploads/2019/01/Most-Warszawski-ud.-Zofia-Linart-848x478.jpg
!wget https://imageai.readthedocs.io/en/latest/_images/image2.jpg
--2019-03-15 20:59:35-- https://geek.justjoin.it/wp-content/uploads/2018/08/1-przed.jpeg Resolving geek.justjoin.it (geek.justjoin.it)... 104.18.48.121, 104.18.49.121, 2606:4700:30::6812:3179, ... Connecting to geek.justjoin.it (geek.justjoin.it)|104.18.48.121|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 125004 (122K) [image/jpeg] Saving to: ‘1-przed.jpeg.5’ 1-przed.jpeg.5 100%[===================>] 122.07K --.-KB/s in 0.01s 2019-03-15 20:59:35 (9.57 MB/s) - ‘1-przed.jpeg.5’ saved [125004/125004] --2019-03-15 20:59:38-- https://static.polskieszlaki.pl/zdjecia/wycieczki/2014-11/lowicz-247756.jpg Resolving static.polskieszlaki.pl (static.polskieszlaki.pl)... 94.152.166.61 Connecting to static.polskieszlaki.pl (static.polskieszlaki.pl)|94.152.166.61|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 119407 (117K) [image/jpeg] Saving to: ‘lowicz-247756.jpg.4’ lowicz-247756.jpg.4 100%[===================>] 116.61K --.-KB/s in 0.09s 2019-03-15 20:59:38 (1.32 MB/s) - ‘lowicz-247756.jpg.4’ saved [119407/119407] --2019-03-15 20:59:40-- https://2.bp.blogspot.com/-7zWsmytmvi0/Wu4JROjYiqI/AAAAAAAAYk8/Xa-tF8qe8IM54LXQzeQVMfv-xuktZpXtgCLcBGAs/s1600/DSC04790%2B2.jpg Resolving 2.bp.blogspot.com (2.bp.blogspot.com)... 173.194.76.132, 2a00:1450:400c:c00::84 Connecting to 2.bp.blogspot.com (2.bp.blogspot.com)|173.194.76.132|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 265705 (259K) [image/jpeg] Saving to: ‘DSC04790+2.jpg.3’ DSC04790+2.jpg.3 100%[===================>] 259.48K --.-KB/s in 0.003s 2019-03-15 20:59:40 (85.0 MB/s) - ‘DSC04790+2.jpg.3’ saved [265705/265705] --2019-03-15 20:59:41-- http://www.polskaniezwykla.pl/pictures/original/269643.jpg Resolving www.polskaniezwykla.pl (www.polskaniezwykla.pl)... 178.255.45.42 Connecting to www.polskaniezwykla.pl (www.polskaniezwykla.pl)|178.255.45.42|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 146980 (144K) [image/jpeg] Saving to: ‘269643.jpg.2’ 269643.jpg.2 100%[===================>] 143.54K --.-KB/s in 0.1s 2019-03-15 20:59:42 (1.30 MB/s) - ‘269643.jpg.2’ saved [146980/146980] --2019-03-15 20:59:43-- http://lok.art.pl/wp-content/uploads/2019/01/Most-Warszawski-ud.-Zofia-Linart-848x478.jpg Resolving lok.art.pl (lok.art.pl)... 85.128.169.176 Connecting to lok.art.pl (lok.art.pl)|85.128.169.176|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 97080 (95K) [image/jpeg] Saving to: ‘Most-Warszawski-ud.-Zofia-Linart-848x478.jpg.1’ Most-Warszawski-ud. 100%[===================>] 94.80K --.-KB/s in 0.06s 2019-03-15 20:59:43 (1.63 MB/s) - ‘Most-Warszawski-ud.-Zofia-Linart-848x478.jpg.1’ saved [97080/97080] --2019-03-15 20:59:45-- https://imageai.readthedocs.io/en/latest/_images/image2.jpg Resolving imageai.readthedocs.io (imageai.readthedocs.io)... 137.116.78.48 Connecting to imageai.readthedocs.io (imageai.readthedocs.io)|137.116.78.48|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 2117617 (2.0M) [image/jpeg] Saving to: ‘image2.jpg’ image2.jpg 100%[===================>] 2.02M 2.09MB/s in 1.0s 2019-03-15 20:59:46 (2.09 MB/s) - ‘image2.jpg’ saved [2117617/2117617]
# zawartość katalogu
!ls
1-przed.jpeg resnet50_coco_best_v2.0.1.h5 sample_data
from imageai.Detection import ObjectDetection
import os
os.chdir('/content/')
execution_path = os.getcwd()
input_image=os.path.join(execution_path , "1-przed.jpeg")
input_image=os.path.join(execution_path , "lowicz-247756.jpg")
#input_image=os.path.join(execution_path , "DSC04790+2.jpg")
#input_image=os.path.join(execution_path , "269643.jpg")
#input_image=os.path.join(execution_path , "Most-Warszawski-ud.-Zofia-Linart-848x478.jpg")
#input_image=os.path.join(execution_path , "image2.jpg")
output_image=os.path.join(execution_path , "1-po.jpg")
detector = ObjectDetection()
detector.setModelTypeAsRetinaNet()
detector.setModelPath(os.path.join(execution_path , "resnet50_coco_best_v2.0.1.h5"))
detector.loadModel(detection_speed="normal")
#detector.loadModel(detection_speed="fast")
detections = detector.detectObjectsFromImage(input_image, output_image)
#detections = detector.detectObjectsFromImage(input_image, output_image,minimum_percentage_probability=50,extract_detected_objects=False)
print (input_image,output_image)
print (detections)
if (len(eachObject)>1) :
for eachObject in detections:
print(eachObject["name"] , " : " , eachObject["percentage_probability"] )
/content/lowicz-247756.jpg /content/1-po.jpg [{'name': 'umbrella', 'percentage_probability': '54.70021367073059'}, {'name': 'umbrella', 'percentage_probability': '55.76332211494446'}, {'name': 'clock', 'percentage_probability': '99.29952621459961'}, {'name': 'bicycle', 'percentage_probability': '71.14313840866089'}, {'name': 'bicycle', 'percentage_probability': '57.884299755096436'}]
!uname -a
Linux 14bfc72dd48c 4.14.79+ #1 SMP Wed Dec 19 21:19:13 PST 2018 x86_64 x86_64 x86_64 GNU/Linux
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
plt.figure(figsize=(15,15))
plt.axis('off')
plt.grid(b=None)
image1 = mpimg.imread(input_image)
plt.imshow(image1)
plt.show()
plt.figure(figsize=(15,15))
plt.axis('off')
plt.grid(b=None)
image2 = mpimg.imread(output_image)
plt.imshow(image2)
plt.show()