Skip to content

Instantly share code, notes, and snippets.

View tmwatchanan's full-sized avatar
⌨️
I use Neovim btw

Watchanan Chantapakul tmwatchanan

⌨️
I use Neovim btw
View GitHub Profile
@tmwatchanan
tmwatchanan / realsense_capture_dataset.py
Created January 17, 2020 09:15
Code for capturing dataset (RGB + D) for Intel RealSense D415
# First import the library
import pyrealsense2 as rs
import numpy as np
import cv2
import os
import shutil
import pyttsx3
from threading import Thread
# gdrive mount
from google.colab import drive
drive.flush_and_unmount()
drive.mount('/content/drive', force_remount=True)
import os
os.chdir("/content/drive/My Drive/Computer Engineering/Karn's Research Assistance/Food Scanner/src/")
os.getcwd()
from google.colab import drive
drive.mount('/content/drive', force_remount=True)
import os
os.chdir("/content/drive/My Drive/Computer Engineering/Karn's Research Assistance/CCC Grading/dev/segmentation")
os.getcwd()
@tmwatchanan
tmwatchanan / max_un_pooling.py
Created September 30, 2019 12:57
MaxPooling and UnPooling with positions
class MaxPoolingWithArgmax2D(Layer):
def __init__(
self,
pool_size=(2, 2),
strides=(2, 2),
padding='same',
**kwargs):
super(MaxPoolingWithArgmax2D, self).__init__(**kwargs)
self.padding = padding
@tmwatchanan
tmwatchanan / segnet.py
Created September 30, 2019 06:49
SegNet model architecture (keras)
def create_model(
pretrained_weights=None,
input_size=(),
num_classes=2,
learning_rate=1e-4,
batch_normalization=False,
is_summary=True,
):
# define params
kernel = 3
@tmwatchanan
tmwatchanan / usg.py
Created September 30, 2019 06:46
U-SegNet model architecture (keras)
def create_model(
pretrained_weights=None,
input_size=(),
num_classes=2,
learning_rate=1e-4,
batch_normalization=False,
is_summary=True,
):
# define params
kernel = 3
@tmwatchanan
tmwatchanan / excel_web.php
Created June 21, 2019 17:30
A PHP script of how to directly output Xlsx (Excel) file when a user access a webpage
<?php
require_once 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
$writer = new Xlsx($spreadsheet);
@tmwatchanan
tmwatchanan / excel_cli.php
Created June 21, 2019 17:28
An example from PhpSpreadsheet
<?php
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
@tmwatchanan
tmwatchanan / ffmpeg_screen_recording.sh
Created June 15, 2019 08:00
A snippet for recording screen using ffmpeg
ffmpeg -video_size 1366x768 -framerate 25 -f x11grab -i :0.0 -f pulse -ac 2 -i 0 output.mkv
@tmwatchanan
tmwatchanan / upsampling2d_tpu.py
Created June 5, 2019 17:07
A workaround for the currently unsupported operation, UpSampling2D, on TPU
def nearest_upsampling(data, scale):
"""Nearest neighbor upsampling implementation.
Args:
data: A float32 tensor of size [batch, height_in, width_in, channels].
scale: An integer multiple to scale resolution of input data.
Returns:
data_up: A float32 tensor of size
[batch, height_in*scale, width_in*scale, channels].
"""