Blog tiếng Việt
Các bài viết tiếng Việt về AI, thị giác máy tính và kỹ thuật phần mềm.
20209 posts
Cài đặt và sử dụng VS Code trên Google Colab
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 thủ công.
Tìm hiểu mô hình YOLO cho phát hiện vật - Từ YOLOv1 đến YOLOv3
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ể.
Hackathon: Xây dựng giải pháp biến đổi, stream giấy viết cho giáo dục từ xa
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?
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
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
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.
NoteCác tài liệu và khoá học về học máy
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 hay về học máy kèm một vài đánh giá. Hi vọng các tài liệu / khoá học này sẽ phần nào giúp ích được cho các bạn mới làm quen với học máy / học sâu. Các khoá học Khoá nhập môn học m...
Gọi hàm Python trên C++ với OpenCV
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
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.
20196 posts
Phát hiện đường thẳng với Hough Transform - OpenCV
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 tế.
Thiết kế thùng rác thông minh tự phân loại rác với Raspberry Pi 3
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 servo.
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
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
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
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
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ả.
20184 posts
Những package cần có cho Ubuntu
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)
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
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
Ả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.
20175 posts
Xây dựng một cấu hình Emacs từ đầu
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.
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
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
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
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
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.
201614 posts
Kinh nghiệm ban đầu với Fedora Linux
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
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
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
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
Cấu hình Emacs để lập trình C
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
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
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
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
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
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
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
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
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
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
