Skip to content

Instantly share code, notes, and snippets.

Avatar
💻

Kyle Barron kylebarron

💻
View GitHub Profile
@kylebarron
kylebarron / demo.ipynb
Last active Apr 12, 2021
Test binder from Gist
View demo.ipynb
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View sentinel-2-l2a-mosaic-120-2019-12-7-01K.json
{
"type": "Feature",
"stac_version": "1.0.0-beta.2",
"id": "sentinel-2-l2a-mosaic-120-2019-12-7-01K",
"properties": {
"start_datetime": "2019-12-07T00:00:00",
"end_datetime": "2019-12-17T00:00:00",
"platform": "sentinel-2",
"gsd": 120,
"datetime": null
@kylebarron
kylebarron / pyproject.toml
Created Nov 4, 2020
Example pyproject.toml for poetry issue "BadZipFile with public pypi package"
View pyproject.toml
[tool.poetry]
name = "tmp"
version = "0.1.0"
description = ""
authors = ["Kyle Barron"]
[tool.poetry.dependencies]
python = "^3.7"
pyarrow = "^2.0.0"
@kylebarron
kylebarron / pack-12bits-sentinel.py
Created Sep 15, 2020
Example of packing bits for sentinel data
View pack-12bits-sentinel.py
import zlib
from io import BytesIO
# pip install bitstruct
import bitstruct
import numpy as np
import rasterio
path = 's3://sentinel-cogs/sentinel-s2-l2a-cogs/2020/S2A_26PQB_20200401_0_L2A/B02.tif'
@kylebarron
kylebarron / pack-12bits.py
Created Sep 14, 2020
Pack 12-bit buffer (very inefficient right now)
View pack-12bits.py
import zlib
from io import BytesIO
# pip install bitstruct
import bitstruct
import numpy as np
arr = np.random.randint(0, 4096, size=(256, 256), dtype=np.uint16)
buf = BytesIO()
np.save(buf, arr)
View widget-deserialization.ipynb
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@kylebarron
kylebarron / affine_reproj_tile_intersect.py
Last active Mar 25, 2020
Source-tile intersection queries using Affine projection matrices
View affine_reproj_tile_intersect.py
def intersect_bounds(bounds1, bounds2):
"""Find intersection of two bounding boxes
Attributes
----------
bounds1 : list
bounds (left, bottom, right, top).
bounds2 : list
bounds (left, bottom, right, top).
Returns
-------
View map.geojson
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@kylebarron
kylebarron / new_droplet.md
Last active Oct 6, 2019
Starter code for new DO droplet
View new_droplet.md
  1. Log on with ssh root@<public ip>.
  2. Add new user with adduser <username>.
  3. Give that new user sudo permissions with usermod -aG sudo <username>
  4. Copy ssh keys from root user to new user
    mkdir /home/<username>/.ssh
    cp ~/.ssh/authorized_keys /home/<username>/.ssh/
    chown <username> /home/<username>/.ssh/authorized_keys
    
  5. Log out and log on with that new user ssh <username>@<public ip>
@kylebarron
kylebarron / scrape-sitemap.sh
Created Apr 1, 2019 — forked from pix0r/scrape-sitemap.sh
Use wget to scrape all URLs from a sitemap.xml Usage: scrape-sitemap.sh http://domain.com/sitemap.xml
View scrape-sitemap.sh
#!/bin/sh
SITEMAP=$1
if [ "$SITEMAP" = "" ]; then
echo "Usage: $0 http://domain.com/sitemap.xml"
exit 1
fi
XML=`wget -O - --quiet $SITEMAP`