default pet

My name is Henry Quoc Tran. I am currently 32 years old. I grew up in Milpitas, California. I live in Saigon, Vietnam. Previously: San Francisco, California. I like to develop games! I am Vietnamese and Chinese. I live life through quests.

Currently, I am in Saigon focused on learning Vietnamese and hosting events and movie nights. Recently I made a translation of the One Night Ultimate Werewolf app in Vietnamese!

I love magic, one of my heroes is Derren Brown. Click here to get your digital palm read!

I have a habit of scrolling endlessly through old Geocities pages – remnants of the old internet. Or stalking people 20 years older than me, who I used to play games and learn how to program with. I find it interesting how I am now their age when they first talked to me. Most of them disappeared off the internet. I wonder what happened, and I wonder if I'll also, one day, disappear.

me


//
//  main.cpp
//  VisionTest
//
//  Created by hen on 8/14/14.
//  Copyright (c) 2014 qwook. All rights reserved.
//

#include <iostream>

#include <opencv2/opencv.hpp>

#include <zlib.h>

using namespace cv;
using namespace std;

int main(int argc, const char * argv[])
{
    VideoCapture cam(0);
    
    Mat frameOriginal;
    
    Mat saved;
    
    Mat previous;
    Mat frame;
    Mat flow;
//    SIFT extractor;
    
    char key;
    bool first = true;
    
    while (true) {
        
        cam >> frameOriginal;
        resize(frameOriginal, frame, Size(frameOriginal.cols/2, frameOriginal.rows/2));
        
        if (key == 'q') break;
        if (key == 'c' or first) {
            first = false;
            frame.copyTo(saved);
//            resize(frame, saved, Size(frame.cols/4, frame.rows/4));
        }
        if (key == 'a') {
            
            if (!previous.empty()) {
                Mat previousGrey;
                cvtColor(previous, previousGrey, COLOR_BGR2GRAY);
                
                Mat frameGrey;
                cvtColor(frame, frameGrey, COLOR_BGR2GRAY);
                
//                calcOpticalFlowFarneback(previousGrey, frameGrey, flow, 0.5f, 3, 15, 3, 5, 1.2, OPTFLOW_FARNEBACK_GAUSSIAN);
                calcOpticalFlowFarneback(previousGrey, frameGrey, flow, 0.5f, 3, 15, 3, 5, 1.2, 0);
            }
            
            frame.copyTo(previous);
            
            const int rows = flow.rows;
            const int cols = flow.cols;
            
            const int saved_rows = saved.rows;
            const int saved_cols = saved.cols;
            
            Mat oldSaved;
            saved.copyTo(oldSaved);
            
            for (int y = 0; y < rows; y+=1) {
                for (int x = 0; x < cols; x+=1) {
                    Vec2f flowVec = flow.at<Vec2f>(y, x);
//                    line(saved, Point2f(x + flowVec[0], y + flowVec[1]), Point2f(x + flowVec[0], y + flowVec[1]), Scalar(255, 0, 0));
                    Vec3b pixel = oldSaved.at<Vec3b>(y, x);
                    saved.at<Vec3b>((int)MAX(MIN(round((y + flowVec[1])), saved_rows-1), 0), (int)MAX(MIN(round((x + flowVec[0])), saved_cols-1), 0)) = pixel;
                    
//                    saved.at<Vec3b>(y, x) = Vec3b(flowVec[0]*127, flowVec[1]*127, flowVec[0]*127);
                    
                }
            }
        }
        
        key = waitKey(1);
        
        imshow("window", saved);

        
    }

    return 0;
}

I like to explore nostalgia, trauma, and the deterioration of the internet. I also like happy things too like matcha mochi donuts.

►Also, I guess I am a bunch of other stuff...

I am an indie game developer.

I am an Instagram stories spammer.

I am a writer and I've won an award.

I am a web developer.

I produce electronic music.

I host events.

I compose and write lyrics.

I sometimes draw.

I ride motorcycles.

I do vinyasa yoga.

I boulder and top-rope.

furcadia

These are links to some cool people that I added without their permission. Please message me if you want your link removed.