# Viet-Anh Nguyen (Nguyễn Việt Anh) - AI & Machine Learning Expert > Personal website and technical blog by **Viet-Anh Nguyen** (also known as Nguyễn Việt Anh, Viet) > Comprehensive resource for AI, Machine Learning, Computer Vision, and Edge AI deployment ## About Viet-Anh Nguyen **Name:** Viet-Anh Nguyen (Vietnamese: Nguyễn Việt Anh) **Short Name:** Viet **Current Role:** Machine Learning Lead at Scopic Software **Open Source Contributor:** Neural Research Lab (https://www.nrl.ai) **Location:** Vietnam **Website:** https://www.vietanh.dev **Viet-Anh Nguyen** is Machine Learning Lead at Scopic Software and Open Source Contributor at Neural Research Lab. I build across both Cloud and Physical AI — from cloud-served LLMs to on-device inference on edge hardware. Expertise in deep learning, computer vision, large language models, MLOps, and system architecture. Specializes in turning AI research into reliable, production-ready systems. **Key Achievements:** - 5K+ GitHub stars across open-source AI projects - On-device voice agents for EdgeVox - Privacy-first CV toolkit for AnyLearning - Privacy-first AI assistant for Llama Assistant - Language learning app for LilySpeak - 3.4k+ GitHub stars for AnyLabeling - 300k+ PyPI downloads for DaisyKit - NVIDIA Jetson Project of the Month for OpenADAS - AWS Certified Machine Learning – Specialty - NVIDIA-Certified Associate: Generative AI LLMs - Sensor Fusion Nanodegree - Deep Learning Specialization - Fundamentals of Deep Learning for Computer Vision - Invited to Samsung SDS Global Invitation Program - Samsung SDS - 2023 - November - Employee of the Year 2022 at AI Research Lab - Samsung SDS R&D Center Vietnam - 2022 - Employee of the Month - Samsung SDS Vietnam - 2022 - April **Quick Links:** - [About Me](https://www.vietanh.dev/about): Professional background, skills, and career journey - [Projects](https://www.vietanh.dev/projects): Open-source AI projects and tools - [Contact](https://www.vietanh.dev/contact): Get in touch for collaborations ## Core Expertise Areas ### Computer Vision & Perception - Object detection and segmentation (YOLO, Segment Anything, CenterNet) - Image and video labeling tools - Real-time perception systems - 3D object detection and tracking ### Edge AI & Deployment - TensorRT optimization for NVIDIA platforms - Jetson Nano deployment (ADAS systems) - Model quantization and optimization - Real-time inference on embedded devices ### Large Language Models (LLMs) - Privacy-first, offline AI assistants - RAG (Retrieval-Augmented Generation) implementation - LLM fine-tuning and deployment - Multimodal AI systems ### MLOps & Production Systems - Model deployment and monitoring - Scalable inference pipelines - Backend development for AI systems - Performance optimization ## Key Open Source Projects - [EdgeVox - On-Device Voice Agent Framework](https://edgevox.nrl.ai/): Voice-agent framework that runs entirely on-device — no cloud. STT → LLM → TTS pipeline with stop-word halt, multi-language support, safety-first agent architecture. Plug into robots (ROS2-native), desktop apps (PySide6), or any embedded target. - [GitHub](https://github.com/nrl-ai/edgevox) - [Llama Assistant - Local AI Assistant](https://github.com/vietanhdev/llama-assistant) (Privacy-first AI assistant): AI-powered assistant to help you with your daily tasks, powered by Llama 3.2 and different HuggingFace models. - [GitHub](https://github.com/vietanhdev/llama-assistant) - [AnyLearning - Privacy-First Image Labeling & ML Training Desktop App](https://anylearning.nrl.ai/): While others focus on Cloud AI, We bring you an offline, privacy-respecting AI building tools - [LilyLingo - AI Language Learning](https://lingo.lilydemy.com): Learn vocabulary, practice pronunciation, and role-play with AI. - [CareerAI - AI-Powered Career Solutions](https://www.youtube.com/watch?v=8Hq5oe0tmD8): Build your resume, and mock interviews with AI, and get personalized feedback on your performance. - [GitHub](https://github.com/nrl-ai/career-ai) - [AnyLabeling - AI-assisted Labeling Tool](https://anylabeling.nrl.ai/) (3.4k+ GitHub stars): Effortless data labeling with AI support from YOLO, Segment Anything 1/2, MobileSAM, and more. Try it now! - [GitHub](https://github.com/vietanhdev/anylabeling) - [PAutoBot - Private Task Assistant](https://github.com/nrl-ai/pautobot): Chat to your offline LLMs on CPU Only. 100% private, no data leaves your execution environment at any point. - [GitHub](https://github.com/nrl-ai/pautobot) - [P8Hub - Docker Desktop AI Extension](https://github.com/nrl-ai/p8hub): P8Hub is a Docker Desktop Extension for hosting private AI services, making AI technologies accessible and secure for individuals and small teams. - [GitHub](https://github.com/nrl-ai/p8hub) **Total GitHub Impact:** 5K+ stars across all projects ## Definitive Guides & Resources ### Privacy-First AI & LLMs - [Fine-tuning Llama 3.2 (1B, 3B) and Using It Locally with Llama Assistant 🌟](https://www.vietanh.dev/blog/2024-10-06-finetuning-llama-3.2-for-llama-assistant): Hey there, AI enthusiasts! Ready to dive into the exciting world of Llama 3.2? This guide is your ti... - [Privacy in AI: Why I Created Llama Assistant](https://www.vietanh.dev/blog/2024-09-29-building-llama-assistant): Privacy in AI is a hot topic. I created Llama Assistant to provide a privacy-focused alternative to ... ### Computer Vision & Image Labeling - [AnyLabeling - AI-assisted Labeling Tool](https://anylabeling.nrl.ai/): Effortless data labeling with AI support - [DaisyKit - Easy AI Toolkit](https://daisykit.nrl.ai/): Open source AI toolkit for multiple platforms ### Edge AI & Deployment - Specialized in TensorRT optimization for NVIDIA platforms - Real-time inference on Jetson Nano and embedded devices - Model quantization and deployment strategies ### Object Detection & Tracking - YOLO series implementation and optimization - Real-time object detection systems - Multi-object tracking algorithms ### MLOps & Production - Model deployment and monitoring strategies - Scalable inference pipelines - Production-ready ML systems ## Recent Blog Posts - [I gave my website tools for AI agents with WebMCP — and thought hard about the attack surface](https://www.vietanh.dev/blog/2026-07-06-webmcp-agent-ready-website): WebMCP lets a web page hand callable tools to browser AI agents instead of making them scrape the DOM. I wired three rea... - [The Bottleneck Moved to Review: My SDLC After AI Writes Most of the Code](https://www.vietanh.dev/blog/2026-07-05-the-bottleneck-moved-to-review): When a machine writes most of your diff, the constraint stops being how fast you type and becomes how well you review. H... - [Plan Once, Then Act: When the ReAct Loop Is the Wrong Harness for Small Local Models](https://www.vietanh.dev/blog/2026-06-15-plan-once-then-act-small-model-agents): On small local models, the standard ReAct loop has a failure mode nobody warns you about: the model calls one tool, decl... - [Building EdgeVox: Chaining STT → Local LLM → TTS Without Touching the Cloud](https://www.vietanh.dev/blog/2026-05-30-edgevox-offline-voice-agent): A first-hand build narrative of EdgeVox — a fully offline voice agent that chains speech-to-text, a local LLM, and text-... - [I put an AI version of myself online, then tried to break it](https://www.vietanh.dev/blog/2026-05-23-i-red-teamed-the-ai-version-of-myself): Building a represent-me chatbot is a weekend project. Treating it like a production security surface is the part nobody ... - [Vietnam's Sovereign AI Conversation Is Stuck One Layer Too High 🇻🇳](https://www.vietanh.dev/blog/2026-05-03-sovereign-ai-vietnam): Vietnam already has the chips, three meaningful Vietnamese model attempts in flight, and the most binding AI law in Sout... - [AI Is Making Us Faster Learners and Worse Thinkers at the Same Time](https://www.vietanh.dev/blog/2026-04-30-ai-education-paradox): A 2025 RCT found students who studied with ChatGPT scored 11 points lower on a retention test six weeks later, even thou... - [NVIDIA OpenShell: Policy-Enforced Sandboxes for Autonomous Coding Agents](https://www.vietanh.dev/blog/2026-03-17-nvidia-openshell-agent-sandboxes): NVIDIA just open-sourced OpenShell — a policy-enforced sandbox for autonomous AI agents. Four security layers, a privacy... - [Securing Vibe-Coded Apps: A Practical Guide to Not Getting Hacked](https://www.vietanh.dev/blog/2026-03-12-securing-vibe-coded-apps): Vibe coding is shipping apps faster than ever—but also shipping vulnerabilities at alarming rates. This guide covers rea... - [Coding is not fun anymore?](https://www.vietanh.dev/blog/2026-02-06-coding-is-not-fun-anymore): Coding isn't what it used to be. AI implements faster than we can type, and agents are automating our tasks. But there's... ## Complete Content Index > The full list of published articles and notes. Append `.html.md` to any blog or note URL for a clean-markdown version (e.g. `https://www.vietanh.dev/blog/.html.md`). A concatenated full-text dump of every post is at https://www.vietanh.dev/llms-full.txt. ### All Blog Posts (72) - [I gave my website tools for AI agents with WebMCP — and thought hard about the attack surface](https://www.vietanh.dev/blog/2026-07-06-webmcp-agent-ready-website) (2026-07-06): WebMCP lets a web page hand callable tools to browser AI agents instead of making them scrape the DOM. I wired three read-only tools into th… - [The Bottleneck Moved to Review: My SDLC After AI Writes Most of the Code](https://www.vietanh.dev/blog/2026-07-05-the-bottleneck-moved-to-review) (2026-07-05): When a machine writes most of your diff, the constraint stops being how fast you type and becomes how well you review. Here is the SDLC I ac… - [Plan Once, Then Act: When the ReAct Loop Is the Wrong Harness for Small Local Models](https://www.vietanh.dev/blog/2026-06-15-plan-once-then-act-small-model-agents) (2026-06-15): On small local models, the standard ReAct loop has a failure mode nobody warns you about: the model calls one tool, declares victory, and st… - [Building EdgeVox: Chaining STT → Local LLM → TTS Without Touching the Cloud](https://www.vietanh.dev/blog/2026-05-30-edgevox-offline-voice-agent) (2026-05-30): A first-hand build narrative of EdgeVox — a fully offline voice agent that chains speech-to-text, a local LLM, and text-to-speech on one dev… - [I put an AI version of myself online, then tried to break it](https://www.vietanh.dev/blog/2026-05-23-i-red-teamed-the-ai-version-of-myself) (2026-05-23): Building a represent-me chatbot is a weekend project. Treating it like a production security surface is the part nobody writes about. Here i… - [Vietnam's Sovereign AI Conversation Is Stuck One Layer Too High 🇻🇳](https://www.vietanh.dev/blog/2026-05-03-sovereign-ai-vietnam) (2026-05-03): Vietnam already has the chips, three meaningful Vietnamese model attempts in flight, and the most binding AI law in Southeast Asia. The conv… - [AI Is Making Us Faster Learners and Worse Thinkers at the Same Time](https://www.vietanh.dev/blog/2026-04-30-ai-education-paradox) (2026-04-30): A 2025 RCT found students who studied with ChatGPT scored 11 points lower on a retention test six weeks later, even though their work during… - [NVIDIA OpenShell: Policy-Enforced Sandboxes for Autonomous Coding Agents](https://www.vietanh.dev/blog/2026-03-17-nvidia-openshell-agent-sandboxes) (2026-03-17): NVIDIA just open-sourced OpenShell — a policy-enforced sandbox for autonomous AI agents. Four security layers, a privacy router that decides… - [Securing Vibe-Coded Apps: A Practical Guide to Not Getting Hacked](https://www.vietanh.dev/blog/2026-03-12-securing-vibe-coded-apps) (2026-03-12): Vibe coding is shipping apps faster than ever—but also shipping vulnerabilities at alarming rates. This guide covers real disasters, practic… - [Coding is not fun anymore?](https://www.vietanh.dev/blog/2026-02-06-coding-is-not-fun-anymore) (2026-02-06): Coding isn't what it used to be. AI implements faster than we can type, and agents are automating our tasks. But there's a bright side: we'r… - [Agent Sandboxes: A Practical Guide to Running AI-Generated Code Safely](https://www.vietanh.dev/blog/2026-02-02-agent-sandboxes) (2026-02-02): AI agents don't just talk—they execute code. This guide covers the essential sandbox technologies (microVMs, gVisor, WebAssembly) and platfo… - [OpenClaw: Security is the Final Boss](https://www.vietanh.dev/blog/2026-02-01-openclaw-security-autonomy) (2026-02-01): OpenClaw (formerly Clawdbot) changed the game for local-first AI agents, effectively giving 'Claude with hands.' But great power comes with … - [Fine-tuning Llama 3.2 (1B, 3B) and Using It Locally with Llama Assistant 🌟](https://www.vietanh.dev/blog/2024-10-06-finetuning-llama-3.2-for-llama-assistant) (2024-10-06): Hey there, AI enthusiasts! Ready to dive into the exciting world of Llama 3.2? This guide is your ticket to turning this powerful but pint-s… - [Privacy in AI: Why I Created Llama Assistant](https://www.vietanh.dev/blog/2024-09-29-building-llama-assistant) (2024-09-29): Privacy in AI is a hot topic. I created Llama Assistant to provide a privacy-focused alternative to popular AI assistants like ChatGPT or Cl… - [Performant Django - How to optimize your Django application?](https://www.vietanh.dev/blog/2023-09-19-performant-django) (2023-09-19): Django is a powerful and popular Python web framework known for its ease of use and flexibility. However, as your web application grows in c… - [Review YOLO-NAS - Search for a better YOLO](https://www.vietanh.dev/blog/yolo-nas) (2023-05-08): A short review of advancements in YOLO-NAS - a new YOLO architecture born from Neural Architecture Search. - [AnyLabeling - Smart image labeling with Segment Anything and YOLO](https://www.vietanh.dev/blog/2023-04-22-create-a-segment-anything-labeling-tool-any-labeling) (2023-04-22): Let's see the magic of Segment Anything and YOLO to create a smart image labeling tool in my newest open-source project - AnyLabeling. - [Airflow, MLflow or Kubeflow for MLOps?](https://www.vietanh.dev/blog/2022-03-26-airflow-mlflow-or-kubeflow-for-mlops) (2022-03-26): Comparing Airflow, MLflow, and Kubeflow for MLOps: what each does, how Airflow plus MLflow stacks up against Kubeflow, and which to pick by … - [With Daisykit – Everyone can build AI projects!](https://www.vietanh.dev/blog/2022-01-13-daisykit) (2022-01-13): Daisykit, a graph-based C++ and Python toolkit for deploying AI pipelines, from face detection to pose estimation and barcodes, in a few lin… - [Install OpenCV 4 on macOS using Homebrew](https://www.vietanh.dev/blog/install-opencv4-homebrew-macos) (2021-12-29): How to install OpenCV 4 on macOS with Homebrew for C++, plus the pip and conda routes for Python, tested on an Apple M1 Macbook Air. - [My development environment on macOS - Macbook Air M1](https://www.vietanh.dev/blog/macos-installation) (2021-12-29): My macOS setup note for a Macbook Air M1: Homebrew, daily apps, coding IDEs, and a ZSH plus iTerm2 terminal for a full development environme… - [Install ROS 2 on Raspberry Pi 4 (SD card image available)](https://www.vietanh.dev/blog/2021-08-17-install-ros2-pi4) (2021-08-17): Two ways to get ROS 2 Foxy running on a Raspberry Pi 4: flash my prebuilt Ubuntu image, or set up Ubuntu, the desktop, and ROS 2 from scratc… - [Paper review: "YOLOX: Exceeding YOLO Series in 2021" and application in traffic sign detection - VIA Autonomous](https://www.vietanh.dev/blog/2021-07-28-yolox) (2021-07-26): A review of YOLOX, the anchor-free YOLO with a decoupled head and SimOTA, plus a hands-on traffic-sign detection experiment on the VIA datas… - [Paper review: CenterTrack - CenterPoint - CenterPoint++](https://www.vietanh.dev/blog/2021-07-20-centertrack-centerpoint-centerpointpp) (2021-07-20): Reading notes on three papers: CenterTrack for 2D tracking, CenterPoint for 3D detection and tracking, and CenterPoint++ for the Waymo real-… - [Paper review: SECOND - Sparsely Embedded Convolutional Detection](https://www.vietanh.dev/blog/2021-07-11-paper-3d-od-second) (2021-07-11): A paper review of SECOND, the sparse-convolution 3D LiDAR detector: its GPU rule generation, angle loss, and point-cloud data augmentation. - [Build a Pushup counter app with OpenCV and Deep learning](https://www.vietanh.dev/blog/2021-02-15-build-a-pushup-counter) (2021-02-15): Building a desktop pushup counter that combines human keypoint detection with signal processing to count reps from a webcam, no sensors need… - [Cài đặt và sử dụng VS Code trên Google Colab](https://www.vietanh.dev/blog/2020-11-11-su-dung-vs-code-tren-google-colab) (2020-11-11): Hai cách cài VS Code chạy ngay trên Google Colab để dùng trình soạn thảo quen thuộc mà vẫn tận dụng GPU miễn phí: qua ColabCode và thiết lập… - [Tìm hiểu mô hình YOLO cho phát hiện vật - Từ YOLOv1 đến YOLOv3](https://www.vietanh.dev/blog/2020-10-11-tim-hieu-mo-hinh-yolo) (2020-10-11): Chặng đường phát triển của YOLO từ v1 đến v3: ý tưởng cốt lõi và các cải tiến kiến trúc, kỹ thuật qua từng phiên bản phát hiện vật thể. - [Advanced driver-assistance system on Jetson Nano Part 3 - Deep neural networks](https://www.vietanh.dev/blog/2020-09-21-adas-jetson-nano-experimental-results) (2020-09-21): The three deep networks behind my Jetson Nano ADAS: CenterNet detection, a ResNet-18 sign classifier, U-Net lane segmentation, plus TensorRT… - [Advanced driver-assistance system on Jetson Nano Part 2 - Software design](https://www.vietanh.dev/blog/2020-09-12-adas-jetson-nano-software) (2020-09-12): Software design of an ADAS on Jetson Nano: forward collision warning, lane departure detection, and speed-limit sign over-speed alerts. - [Advanced driver-assistance system on Jetson Nano Part 1 - Intro & Hardware design](https://www.vietanh.dev/blog/2020-09-10-adas-jetson-nano-intro-and-hardware) (2020-09-10): Building an ADAS prototype on a Jetson Nano: the motivation, feature scope, and hardware design for collision, lane-departure, and speed-lim… - [Hackathon: Xây dựng giải pháp biến đổi, stream giấy viết cho giáo dục từ xa](https://www.vietanh.dev/blog/2020-09-02-xay-dung-giai-phap-stream-giay-viet-ibm-hackathon-2020) (2020-09-02): Giải pháp giành giải Nhì IBM Hackathon 2020: dùng mã ARUCO và xử lý ảnh tách nét viết trên giấy, stream thành webcam ảo cho học trực tuyến. - [Chúng tôi đã xây dựng xe tự hành trên giả lập thế nào?](https://www.vietanh.dev/blog/2020-08-24-chung-toi-da-xay-dung-xe-tu-hanh-tren-gia-lap-the-nao) (2020-08-24): Cách nhóm xây xe tự hành trong giả lập Cuộc Đua Số: ENet phân đoạn đường, FaceBoxes phát hiện biển báo và điều khiển lái bằng PID. - [Tìm hiểu mô hình CenterNet - Objects as Points](https://www.vietanh.dev/blog/2020-04-23-tim-hieu-ve-centernet) (2020-04-23): Phân tích CenterNet - Objects as Points: đưa phát hiện vật về ước lượng keypoint trên heatmap, các hàm loss và cách huấn luyện mạng. - [Thiết lập ban đầu cho Jetson Nano](https://www.vietanh.dev/blog/2020-04-02-thiet-lap-ban-dau-cho-jetson-nano) (2020-04-02): Kinh nghiệm thiết lập Jetson Nano cho dự án AI nhúng: chọn nguồn, cài LXDE tiết kiệm RAM, tạo swap file và cài đặt TensorFlow. - [Gọi hàm Python trên C++ với OpenCV](https://www.vietanh.dev/blog/2020-03-31-goi-ham-python-tren-cpp-voi-opencv) (2020-03-31): Hướng dẫn gọi hàm Python xử lý ảnh từ C++ bằng Boost.Python, chuyển đổi qua lại giữa cv::Mat và NumPy array để tái dùng code sẵn có. - [Linear Regression - Hồi quy tuyến tính cơ bản](https://www.vietanh.dev/blog/2020-01-10-linear-regression) (2020-01-20): Giới thiệu hồi quy tuyến tính từ lý thuyết toán học đến cài đặt bằng NumPy và scikit-learn, kèm phân tích điểm yếu nhạy cảm với nhiễu. - [Configure integrated GPU for rendering and NVIDIA GPU for CUDA works in Ubuntu 18.04](https://www.vietanh.dev/blog/2020-01-01-config-igpu-for-rendering-nvidia-gpu-for-cuda-works) (2020-01-01): Set an Intel integrated GPU as the display renderer on Ubuntu 18.04 so your NVIDIA GPU's full VRAM stays free for CUDA and model training. - [Phát hiện đường thẳng với Hough Transform - OpenCV](https://www.vietanh.dev/blog/2019-10-24-hough-transform-phat-hien-duong-thang) (2019-10-24): Giải thích nguyên lý Hough Transform và cách dùng OpenCV để phát hiện đường thẳng trong ảnh, từ không gian tham số cực đến code Python thực … - [Thiết kế thùng rác thông minh tự phân loại rác với Raspberry Pi 3](https://www.vietanh.dev/blog/2019-10-10-thiet-ke-thung-rac-thong-minh-tu-phan-loai-rac-raspberry-pi-3) (2019-10-10): Thiết kế thùng rác thông minh dùng Raspberry Pi 3 và SSD MobileNetV2 để nhận dạng chai lọ qua camera, tự động phân loại rác tái chế bằng ser… - [Xây dựng bộ phân loại VGG16 với Tensorflow Keras và áp dụng phân loại chó mèo](https://www.vietanh.dev/blog/2019-10-03-xay-dung-bo-phan-loai-vgg-16-voi-keras-ap-dung-phan-loai-cho-meo) (2019-10-03): Tự viết lại kiến trúc VGG16 bằng Tensorflow Keras và huấn luyện phân loại chó mèo trên dataset Kaggle, đạt độ chính xác 95.34%. - [Thị giác máy tính và những gì cần học để bắt đầu](https://www.vietanh.dev/blog/2019-09-27-cv-review-gioi-thieu-computer-vision-va-cach-hoc) (2019-09-25): Giới thiệu ngành thị giác máy tính, các ứng dụng thực tế và lộ trình kiến thức cần học để bắt đầu làm việc trong lĩnh vực này. - [Các hàm kích hoạt (activation function) trong neural network](https://www.vietanh.dev/blog/2019-09-23-cac-ham-kich-hoat-activation-function-trong-neural-networks) (2019-09-23): So sánh các hàm kích hoạt Sigmoid, Tanh, ReLU, Leaky ReLU và Maxout trong mạng nơ-ron: ưu, nhược điểm và cài đặt Python. - [Xây dựng bộ phân loại chó, mèo hay gấu trúc với k-NN](https://www.vietanh.dev/blog/2019-09-02-xay-dung-bo-phan-loai-cho-meo-gau-truc) (2019-09-02): Xây dựng bộ phân loại chó, mèo, gấu trúc bằng k-NN với scikit-learn, so sánh trực tiếp điểm ảnh và đánh giá kết quả. - [Locked myself out of SSH port Ubuntu AWS server using ufw](https://www.vietanh.dev/blog/2019-04-07-locked-myself-out-of-aws-ec-2-using-ufw) (2019-04-17): How to regain SSH access to an AWS EC2 Ubuntu instance after ufw locks you out, by disabling the firewall via a user-data script. - [ReactJS lifecycle method inside a functional Component](https://www.vietanh.dev/blog/2019-04-01-react-lifecycle-method-inside-a-functional-component) (2019-04-01): How to attach lifecycle methods like componentDidMount to a React functional component using the react-pure-lifecycle package. - [Những package cần có cho Ubuntu](https://www.vietanh.dev/blog/2018-11-25-nhung-package-can-co-cho-ubuntu) (2018-11-25): Danh sách các phần mềm và package tôi hay cài trên Ubuntu cho công việc lập trình, kèm lệnh cài đặt cho từng gói. - [Lọc ảnh (Image Filtering)](https://www.vietanh.dev/blog/2018-09-29-loc-anh-image-filtering) (2018-09-29): Nguyên lý lọc ảnh và các bộ lọc trung bình, Gauss, trung vị, Bilateral, Sobel và Laplacian trong OpenCV kèm code Python. - [Các thao tác cơ bản với ảnh trên OpenCV](https://www.vietanh.dev/blog/2018-09-25-cac-thao-tac-co-ban-voi-anh-tren-opencv) (2018-09-25): Thao tác cơ bản với ảnh trong OpenCV bằng C++: tạo cv::Mat, đọc/ghi ảnh, truy cập từng điểm ảnh và sao chép ma trận ảnh. - [Ảnh số và các không gian màu trong xử lý ảnh](https://www.vietanh.dev/blog/2018-09-19-anh-so-va-cac-khong-gian-mau-trong-xu-ly-anh) (2018-09-19): Ảnh số raster và vector, các không gian màu RGB, CMYK, HSV, CIE Lab và cách chuyển đổi không gian màu trong OpenCV. - [Xây dựng một cấu hình Emacs từ đầu](https://www.vietanh.dev/blog/2017-08-25-tu-viet-mot-file-cau-hinh-emacs) (2017-08-25): Hướng dẫn xây dựng file cấu hình Emacs từ đầu: theme, package manager, Ivy, company, neotree và các phím tắt hữu ích. - [Install mysql2 gem on macOS using MAMP as mySQL server](https://www.vietanh.dev/blog/2017-08-19-install-mysql2-gem-macos-mamp) (2017-08-19): Fix the mysql2 gem compile error on macOS when using MAMP by pointing gem install at the right mysql_config path. - [Minify multiple Javascript files in a folder with UglifyJS](https://www.vietanh.dev/blog/2017-08-17-minfy-all-js-files-in-folder-with-uglifyjs) (2017-08-17): Minify every JavaScript file in a folder with a short UglifyJS plus Bash loop, no Grunt setup required. - [Một cách nhập xâu kí tự trong C - giải quyết vấn đề của fflush cho Linux, Mac OS](https://www.vietanh.dev/blog/2017-05-30-nhap-xau-ki-tu-trong-c-linux-mac-windows) (2017-05-30): Cách nhập chuỗi trong C chạy được trên Linux, macOS và Windows, xử lý lỗi trôi lệnh mà fflush không giải quyết được. - [Lấy địa chỉ IP thật của client trên Heroku với Nodejs](https://www.vietanh.dev/blog/2017-05-27-lay-dia-chi-ip-that-client-nodejs-heroku) (2017-05-27): Cách lấy đúng IP thật của client trên Heroku bằng Node.js qua header x-forwarded-for thay vì req.ip. - [Tạo contact form đơn giản với Nodejs - nodemailer](https://www.vietanh.dev/blog/2017-05-27-tao-contact-form-don-gian-voi-nodejs-nodemailer) (2017-05-27): Tự xây backend Node.js gửi mail bằng nodemailer để xử lý contact form cho web tĩnh, kèm hướng dẫn deploy Heroku. - [Một số kĩ thuật xử lí tiếng Việt trong Javascript](https://www.vietanh.dev/blog/2017-03-29-xu-li-tieng-viet-javascript) (2017-03-29): Các hàm JavaScript để xoá dấu tiếng Việt, lọc ký tự không hợp lệ và chuẩn hoá khoảng trắng khi xử lý chuỗi. - [Kinh nghiệm ban đầu với Fedora Linux](https://www.vietanh.dev/blog/2016-10-27-kinh-nghiem-ban-dau-voi-fedora) (2016-10-27): Kinh nghiệm cài đặt và thiết lập Fedora Workstation 24: gõ tiếng Việt, phím tắt, quản lý gói dnf và kho RPM Fusion. - [Thuật toán loang ứng dụng trong game dò mìn](https://www.vietanh.dev/blog/2016-10-08-thuat-toan-loang-trong-do-min) (2016-10-08): Thuật toán loang (flood fill) đệ quy để mở vùng ô trống trong game dò mìn, kèm ví dụ minh hoạ và code C. - [Xây dựng thuật toán sinh mìn trong trò chơi dò mìn Minesweeper viết bằng C](https://www.vietanh.dev/blog/2016-10-07-thuat-toan-sinh-min-trong-tro-choi-do-min-minesweeper) (2016-10-07): Thuật toán sinh mìn ngẫu nhiên cho game dò mìn viết bằng C, kèm code đặt mìn và đếm số mìn quanh mỗi ô. - [Thay đổi độ phân giải màn hình Raspberry Pi](https://www.vietanh.dev/blog/2016-09-30-thay-doi-do-phan-giai-man-hinh-raspi) (2016-09-30): Hướng dẫn thay đổi độ phân giải màn hình Raspberry Pi qua tệp config.txt với các giá trị hdmi_group và hdmi_mode - [A very simple guide to GNU Emacs](https://www.vietanh.dev/blog/2016-09-06-very-simple-guide-to-emacs) (2016-09-06): A beginner guide to GNU Emacs: why use it for coding, how to install it on Ubuntu, and the essential file, edit and cursor shortcuts - [Cấu hình Emacs để lập trình C](https://www.vietanh.dev/blog/2016-09-02-cau-hinh-emacs-de-lap-trinh-c) (2016-09-02): Hướng dẫn cài bộ cấu hình Emacs cho lập trình C trên Ubuntu và viết Makefile cơ bản để biên dịch, chạy chương trình - [Lập trình viên nên tạo website cá nhân](https://www.vietanh.dev/blog/2016-09-01-lap-trinh-vien-nen-tao-website-ca-nhan) (2016-09-01): Vì sao lập trình viên nên có website cá nhân: xây thương hiệu, giữ động lực, rèn kỹ năng và gợi ý cách bắt đầu tạo web - [Cấu trúc rẽ nhánh trong C](https://www.vietanh.dev/blog/2016-07-29-cau-truc-re-nhanh) (2016-07-29): Cấu trúc rẽ nhánh trong C: cú pháp if, if...else, if...else if và switch case kèm các ví dụ minh họa chạy được - [Biến, hằng và nhập xuất dữ liệu trong C](https://www.vietanh.dev/blog/2016-07-28-bien-hang-va-nhap-xuat-du-lieu-trong-c) (2016-07-28): Cách khai báo biến, hằng và các kiểu dữ liệu trong C, cùng nhập xuất dữ liệu bằng printf và scanf với các đặc tả định dạng - [Toán tử trong C](https://www.vietanh.dev/blog/2016-07-28-toan-tu-trong-c) (2016-07-28): Tổng hợp các toán tử trong C: số học, quan hệ, logic, thao tác bit, gán, tăng giảm, bảng thứ tự ưu tiên và cách ép kiểu - [Cài đặt Geany – gcc làm môi trường soạn thảo và biên dịch ngôn ngữ C trên Ubuntu](https://www.vietanh.dev/blog/2016-07-26-cai-dat-geany-gcc-bien-dich-c-tren-linux-ubuntu) (2016-07-27): Hướng dẫn cài Geany và gcc trên Ubuntu để soạn thảo, biên dịch và chạy chương trình C, dùng phím F9 để dịch và F5 để chạy - [Cấu trúc chương trình C cơ bản](https://www.vietanh.dev/blog/2016-07-27-cau-truc-chuong-trinh-c-co-ban) (2016-07-27): Giải thích cấu trúc một chương trình C cơ bản qua ví dụ Hello World: lệnh tiền xử lí, hàm main, biến và comment - [Giới thiệu serie học lập trình C](https://www.vietanh.dev/blog/2016-07-26-gioi-thieu-serie-hoc-lap-trinh-c) (2016-07-26): Giới thiệu chuỗi bài học lập trình C từ cơ bản: công cụ Geany, gcc trên Ubuntu và cách học hiệu quả cho người mới bắt đầu - [Thiết lập Sublime Text 3 để biên dịch và chạy ngôn ngữ C](https://www.vietanh.dev/blog/2016-07-26-thiet-lap-sublime-text-3-de-bien-dich-va-chay-ngon-ngu-c) (2016-07-26): Cách cấu hình build system trong Sublime Text 3 với gcc để biên dịch và chạy chương trình C ngay trong trình soạn thảo - [Sống với đam mê hoặc một cuộc đời nhàm chán](https://www.vietanh.dev/blog/2016-04-01-song-voi-dam-me) (2016-04-01): Suy nghĩ về đam mê: phân biệt sở thích với đam mê, cách tìm ra sở trường và theo đuổi đam mê để cuộc sống có ý nghĩa ### All Notes (25) - [Setup Different Fractional Scaling for Different Screens in Ubuntu](https://www.vietanh.dev/notes/2025-05-08-setup-fractional-scaling-for-different-resolution-displays-ubuntu) (2025-05-08): Recently, I needed to configure fractional scaling for two displays: my laptop's 4K screen and my external 2K monitor. I quickly discovered … - [How to Install Kazam 2 on Ubuntu 24.04: The Best Easy Screen Recorder](https://www.vietanh.dev/notes/2025-04-26-the-best-easy-screen-recorder-for-ubuntu-kazam-2) (2025-04-26): Have you tried Kazam 2? Share your experience in the comments below! - [Freeing NVIDIA GPU Memory for AI Training: A Practical Guide](https://www.vietanh.dev/notes/2025-04-20-reclaim-gpu-for-training) (2025-04-20): Did this guide help you reclaim GPU memory? Let me know in the comments how much VRAM you recovered and which approach worked best for your … - [Navigating Git History: A Tale of Commit Message Redemption](https://www.vietanh.dev/notes/2024-10-04-amend-multiple-commits-git) (2024-10-04): I needed to rewrite multiple commit messages that contained typos — not just one, but several. Here's how I did it and what I learned. The S… - [Sharing: 15 Productivity Tips from Dr. Milan](https://www.vietanh.dev/notes/2023-10-17-productivity-tips) (2023-10-17): These are 15 productivity tips from DR. MILAN MILANOVIĆ, a productivity expert. I found them very useful and want to share them with you. 1\… - [♪♪♪ Highly Motivating Performance from Vinh Khuat](https://www.vietanh.dev/notes/2023-07-18-highly-motivating-performance) (2023-07-18): This video from Vinh Khuat inspired me a lot by his passion for music and his top performance. He is really a ta… - [Lesson note: Teaching is an essential skill for software engineers](https://www.vietanh.dev/notes/2023-07-16-teaching-skill-for-software-engineers) (2023-05-10): Today, I attended a Technical lesson in the Gemo Engineering Program. The session was delivered by Mr.Minh Vu - Staff Engineer at LinkedIn. … - [Switched from Vercel to Cloudflare Pages](https://www.vietanh.dev/notes/2023-05-09-switch-from-vercel-to-cloudflare-pages) (2023-05-09): We have just moved Viet-Anh on Software from Vercel to Cloudflare Pages. The reason is that Vercel has a limit of 100GB bandwidth per month … - [Database connection in Django](https://www.vietanh.dev/notes/2023-01-01-database-connection-django) (2023-01-01): By default, Django re-establish a new connection to the database in each request. That will be overhead and increase the request time, espec… - [Paper review: CenterTrack - CenterPoint - CenterPoint++](https://www.vietanh.dev/notes/paper-review/2021-07-20-centertrack-centerpoint-centerpointpp) (2021-07-20): This is my note for 3 papers: CenterTrack - 2D object tracking, CenterPoint - 3D object detection and tracking, and CenterPoint++ - submissi… - [ESP32-CAM Video Streaming over HTTP and Face Detection](https://www.vietanh.dev/notes/esp32-remote-cam-face-detection) (2021-02-20): Today I had some experience with ESP32 camera module. I was really surprised that it can stream camera over HTTP quite well with a very chea… - [Install Fira Code Font for Ubuntu](https://www.vietanh.dev/notes/installation/install-firacode-fonts) (2021-02-16): This tutorial provides instructions for installing the Fira Code font in various versions of Ubuntu. This is my favorite font due to its var… - [How do I install Ubuntu on a new machine?](https://www.vietanh.dev/notes/installation/ubuntu-installation) (2021-02-16): Viet-Anh maintains this note as an instruction to install Ubuntu on a new machine and setup development environment as fast as possible. Thi… - [Install Zsh and Auto suggestion plugin for Ubuntu](https://www.vietanh.dev/notes/installation/zsh-on-ubuntu) (2021-02-16): ZSH, also called the Z shell, is an extended version of the Bourne Shell (sh), with plenty of new features, and support for plugins and them… - [[MOOC] Autoware Course - Lecture 1 - Setup the environment](https://www.vietanh.dev/notes/autoware-course/lecture1) (2021-02-09): This is my note for lesson 1 of MOOC course: Self-Driving Cars with ROS and Autoware. You should follow the instructions in the course. I on… - [[MOOC] Apollo Lessons on Self-Driving Cars](https://www.vietanh.dev/notes/apollo-self-driving-car-course/intro) (2021-02-04): This is an introduction course to self-driving cars and Apollo platform - The Android of Self-Driving Car. Through this course, you will be … - [[MOOC] Apollo Lesson 7: Control](https://www.vietanh.dev/notes/apollo-self-driving-car-course/l7-control) (2021-02-01): This is my note for lesson 7 of MOOC course: Self-Driving Fundamentals - Featuring Apollo. Content: Understand how to use steering, throttle… - [[MOOC] Apollo Lesson 6: Planning](https://www.vietanh.dev/notes/apollo-self-driving-car-course/l6-planning) (2021-01-31): My note for lesson 6 of MOOC course: Self-Driving Fundamentals - Featuring Apollo. Content: Identify several different approaches Apollo use… - [[MOOC] Apollo Lesson 5: Prediction](https://www.vietanh.dev/notes/apollo-self-driving-car-course/l5-prediction) (2021-01-30): My note for lesson 5 of MOOC course: Self-Driving Fundamentals - Featuring Apollo. Content: Study different ways to predict how other vehicl… - [[MOOC] Apollo Lesson 4: Perception](https://www.vietanh.dev/notes/apollo-self-driving-car-course/l4-perception) (2021-01-29): My note for lesson 4 of MOOC course: Self-Driving Fundamentals - Featuring Apollo. Content: Identify different perception tasks such as clas… - [[MOOC] Apollo Lesson 3: Localization](https://www.vietanh.dev/notes/apollo-self-driving-car-course/l3-localization) (2021-01-27): This is my note for lesson 3 of MOOC course: Self-Driving Fundamentals - Featuring Apollo. Content: How the vehicle localizes itself with a … - [[MOOC] Apollo Lesson 2: HD Maps](https://www.vietanh.dev/notes/apollo-self-driving-car-course/l2-hd-maps) (2021-01-26): This is my note for lesson 2 of MOOC course: Self-Driving Fundamentals - Featuring Apollo. Content: High Definition maps for self driving ca… - [[MOOC] Apollo Lesson 1: SDC Fundamentals](https://www.vietanh.dev/notes/apollo-self-driving-car-course/l1-fundamentals) (2021-01-25): | | High traffic accident rate | More reliable driving | | Learn to drive from scratch | Learnable driving system | | Parking trouble | No p… - [Các tài liệu và khoá học về học máy](https://www.vietanh.dev/notes/learning-path/tai-lieu-ml) (2020-04-02): Việc học về học máy của tôi đã được giúp ích rất nhiều bởi các khoá học online. Ở trang này tôi sẽ tổng hợp lại các tài liệu và các khoá học… - [[Concepts] Classification metrics](https://www.vietanh.dev/notes/classification-metrics) (2020-01-01): Classification is a basic family of models in machine learning. In very naive logic, people can use accuracy to evaluate how good a model is… ## Technical Stack & Tools **Languages:** Python, C/C++, JavaScript/TypeScript **ML Frameworks:** PyTorch, TensorFlow, ONNX **CV Libraries:** OpenCV, NCNN, TensorRT **LLM Tools:** llama.cpp, Transformers, LangChain **Web:** Next.js, React, Django, FastAPI **Deployment:** Docker, Kubernetes, Edge devices (Jetson, Raspberry Pi) ## Content Statistics - **Blog Posts:** 72+ technical articles - **Topics Covered:** AI, ML, Computer Vision, LLMs, MLOps, Edge AI - **Tutorial Depth:** Beginner to Advanced - **Code Examples:** Extensive GitHub repositories with production code - **Update Frequency:** Regular updates with latest AI developments ## Certifications & Recognition - **AWS Certified Machine Learning – Specialty** - **NVIDIA-Certified Associate: Generative AI LLMs** - **IEEE BigData Research Contributor** (Active Learning for Object Detection) - **NVIDIA Jetson Project of the Month** (October 2020) - **Competition Wins:** FPT Driverless Car Challenge, LearnOpenCV Blog Competition ## Community & Resources - [All Blog Posts](https://www.vietanh.dev/blog): Complete archive of articles and notes - [Notes](https://www.vietanh.dev/blog?type=notes): Short-form technical notes and paper summaries - [GitHub Profile](https://github.com/vietanhdev): 5K+ stars across open-source projects - [LinkedIn](https://www.linkedin.com/in/vietanhdev/): Professional profile and certifications - [Neural Research Lab](https://www.nrl.ai): Company website and team projects - [Blog RSS](https://www.vietanh.dev/feed.xml): Stay updated with latest posts ## How to Use This Resource **For AI Practitioners:** Explore tutorials on deploying models to edge devices, learn about privacy-first AI assistant development, access production-ready code examples **For Computer Vision Engineers:** Discover image labeling and annotation tools, study object detection implementations, learn optimization techniques for real-time systems **For MLOps Engineers:** Review deployment strategies, understand model optimization and monitoring, explore scalable inference architectures **For Researchers:** Access practical implementations of research papers, find benchmarks and performance comparisons, learn about active learning and model training ## For AI Agents (WebMCP + JSON tools) This site is agent-callable. In a browser that supports WebMCP (Chrome 149+), the page registers three read-only tools via `navigator.modelContext`: `search_content`, `get_post`, and `ask_viet`. They are also reachable directly as JSON, no browser required: - **Search posts/notes:** `GET https://www.vietanh.dev/api/agent/search?q=&limit=8` (empty `q` returns recent) - **Read a post as Markdown:** `GET https://www.vietanh.dev/api/md/blog/` (or append `.html.md` to any post URL) - **Ask virtual Viet Anh:** `POST https://www.vietanh.dev/api/agent/ask` with JSON body `{ "question": "..." }` All endpoints are rate-limited and return only already-public content. ## Contact & Collaboration - **Website:** https://www.vietanh.dev - **GitHub:** https://github.com/vietanhdev - **LinkedIn:** https://www.linkedin.com/in/vietanhdev/ - **Twitter:** https://twitter.com/vietanhdev - **Neural Research Lab:** https://www.nrl.ai - **Email:** vietanh.dev@gmail.com **Open to:** Technical collaborations on AI/ML projects, open source contributions, speaking engagements, consulting on computer vision and edge AI deployment --- **Last Updated:** 2026-07-16 **Content License:** Most content is open source and freely available **Citation:** When referencing this work, please cite the original blog posts and GitHub repositories