Skip to content

Instantly share code, notes, and snippets.

View dboyliao's full-sized avatar

dboyliao dboyliao

View GitHub Profile
@dboyliao
dboyliao / build_universal.sh
Created March 16, 2017 04:07
Building Universal Framework for iOS
# workaround for bitcode generation problem with Xcode 7.3
unset TOOLCHAINS
FRAMEWORK_NAME="YourFramework"
SIMULATOR_FRAMEWORK_PATH="${BUILD_DIR}/${CONFIGURATION}-iphonesimulator/${FRAMEWORK_NAME}.framework"
DEVICE_FRAMEWORK_PATH="${BUILD_DIR}/${CONFIGURATION}-iphoneos/${FRAMEWORK_NAME}.framework"
UNIVERSAL_BUILD_DIR="${BUILD_DIR}/${CONFIGURATION}-iphoneuniversal"
UNIVERSAL_FRAMEWORK_PATH="${UNIVERSAL_BUILD_DIR}/${FRAMEWORK_NAME}.framework"
@dboyliao
dboyliao / exec_with_gdb.sh
Created April 27, 2017 08:19 — forked from jserv/exec_with_gdb.sh
GDB runner
# Execute an executable under gdb, printing a call stack if we get a crash.
gdb -return-child-result -quiet -batch \
-ex "set env MALLOC_CHECK_=3" \
-ex "set print thread-events off" \
-ex run \
-ex "thread apply all backtrace full" \
-ex "quit" \
$*
@dboyliao
dboyliao / exec_with_gdb.sh
Created April 27, 2017 08:19 — forked from jserv/exec_with_gdb.sh
GDB runner
# Execute an executable under gdb, printing a call stack if we get a crash.
gdb -return-child-result -quiet -batch \
-ex "set env MALLOC_CHECK_=3" \
-ex "set print thread-events off" \
-ex run \
-ex "thread apply all backtrace full" \
-ex "quit" \
$*
@dboyliao
dboyliao / extension.py
Created April 29, 2017 05:55
Mimic Swift extension syntax in Python
# -*- coding: utf-8 -*-
from __future__ import print_function
from functools import wraps
def extension(cls, verbose=False):
if not isinstance(cls, type):
raise ValueError("{} is not a class".format(cls))
def func_deco(func):
if verbose and func.__name__ in globals():
@dboyliao
dboyliao / flask_endpoint_example.py
Created June 2, 2017 09:23
A simple example using flask endpoint
#!/usr/bin/env python
from __future__ import print_function
from flask import Flask, url_for, redirect
import argparse
app = Flask(__name__)
# If you look at the source code of `Flask.route`,
# endpoint is just a key for Flask to route incoming
# request to view function (like `hello` function here).
@dboyliao
dboyliao / cv2_template_matching.py
Last active June 4, 2017 13:35
Example script for object detection with opencv template matching
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# http://docs.opencv.org/trunk/df/dfb/group__imgproc__object.html#ga586ebfb0a7fb604b35a23d85391329be
from __future__ import print_function
import argparse
import sys
try:
import cv2
except ImportError:
print("Install opencv python binding first", file=sys.stderr)
@dboyliao
dboyliao / py_new_init.py
Last active June 5, 2017 05:13
Python __new__, __init__ and __del__ example script
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from __future__ import print_function
class Foo(object):
def __new__(cls, *args, **kwargs):
print("Foo.__new__ invoked")
print("args:", args)
print("kwargs:", kwargs)
# in python3, you can just simply call super() here
@dboyliao
dboyliao / pepper_salt_noise.py
Created June 5, 2017 06:24
Pepper & Salt noise image example
#!/usr/bin/env python3
from __future__ import print_function
import sys
try:
import cv2
import numpy as np
except ImportError:
print("install cv2 and numpy please.", file=sys.stderr)
sys.exit(1)
#!/usr/bin/env python3
# -*- coding: utf8 -*-
import sys, argparse
try:
import cv2
import numpy as np
from scipy.ndimage import convolve
except ImportError:
print("install opencv and scipy please", file=sys.stderr)
sys.exit(1)