Nhận diện khuôn mặt với Python và OpenCV

Nhận diện khuôn mặt với Python và OpenCV

I. Introduction Nhận dạng mặt người (Face recognition) là một lĩnh vực nghiên cứu của ngành Computer Vision, và cũng được xem là một lĩnh vực nghiên cứu của ngành Biometrics (tương tự như nhận dạng vân tay – Fingerprint recognition, hay nhận dạng mống mắt – Iris recognition). Xét về nguyên tắc chung, nhận dạng mặt có sự tương đồng rất lớn với nhận dạng vân tay và nhận dạng mống mắt, tuy nhiên sự khác biệt nằm ở bước trích chọn đặt trưng (feature extraction) của mỗi lĩnh vực. Trong khi nhận dạng vân tay và mống mắt đã đạt ... »

[From ZERO to HERO] Chiến lược phát triển ứng dụng mobile (P1)

[From ZERO to HERO] Chiến lược phát triển ứng dụng mobile (P1)

Bất kì một doanh nghiệp hay một cá nhân nào khi phát hành ứng dụng của mình đều mong muốn sản phẩm của mình sẽ đạt thứ hạng cao trên Store của Google hay Apple. Thế nhưng những bước đi sai lầm ban đầu ngay sau khi launch app đã đưa sản phẩm của họ dần trôi vào quên lãng và gần như mất dấu trên Store dù đã đổ không ít tiền vào chi phí marketing. Để giúp bạn phát triển sản phẩm từ Idea ngẫu hứng tới 1 ứng dụng dược hàng trăm ngàn người dùng trên thế ... »

Mỏ Bitcoin nằm ở đâu? Tại sao ai cũng có thể khai thác được vậy?

Mỏ Bitcoin nằm ở đâu? Tại sao ai cũng có thể khai thác được vậy?

Những năm gần đây đặc biệt là năm 2017 từ khoá Bitcoin được tìm kiếm rất nhiều trên mạng internet, không những vậy Bitcoin còn tạo ra một cơn sốt mà hầu như bất cứ nơi đâu, từ những bà nội trợ, những em học sinh cho tới dân văn phòng, trí thức đều bàn luận rất sôi nổi về Bitcoin. Là một người làm trong nghành công nghệ thông tin tôi quyết định đi tìm gốc rễ về sự ra đời và hình thành của nó để có thể giải thích cho một người bình thường một cách dễ ... »

Các kỹ thuật tiên tiến cho Backend Engineer trong năm 2018

Các kỹ thuật tiên tiến cho Backend Engineer trong năm 2018

Tôi đọc một bài viết chi tiết về lộ trình cho Backend Engineer Modern Backend Developer in 2018. Tuy nhiên tôi cảm thấy có một số khúc mắc đối với lộ trình đã được trình bày trong bài viết. Cần có bao nhiêu kỹ năng trong bài viết trong lĩnh vực backend hiện nay Các kỹ năng quan trọng nào chưa được đề cập trong bài viết trong trang web trên Trong bài viết này tôi viết ra một chút về ý kiến riêng của mình về 2 khúc mắc trên. Tôi không nghĩ mình là một kỹ sư am ... »

GAN tutorial

GAN tutorial

0. Giới thiệu Neural network vẫn đang phát triển rất mạnh trong những năm gần đây. Trong năm 2017, 1 loại neural network có tên là GAN ( Generative adversarial network ) đã phát triển rất mạnh mẽ. Nhằm mục đích giúp các bạn tiếp cận nhanh chóng với mô hình này. Mình sẽ giới thiệu qua nguyên lý và cách thức train 1 mô hình GAN cơ bản cho các bạn. Bài viết gồm có 3 phần: 1. Ý tưởng cở bản về GAN 2. Cách thức train 1 GAN về mặt lý thuyết với mã giá 3. Train GAN với ... »

Map, filter, reduce trong JavaScript

Map, filter, reduce trong JavaScript

Ngay cả khi bạn không phải một lập trình viên sử dụng ngôn ngữ JavaScript thì cũng có thể bạn đã sử dụng 3 hàm map, filter, reduce ở những ngôn ngữ khác. Lý do đơn giản là vì 3 hàm này cực kỳ hữu dụng và giúp code do bạn viết ra được clean hơn. Giờ ta hãy đi vào cụ thể trong JavaScript chúng được dùng như thế nào và mang lại lợi ích gì. 1. Map 1.1 Mô tả Hàm map tạo ra 1 mảng mới. Mảng mới này là kết quả của việc xử lý ... »

Kiến trúc Blockchain - Tạo Blockchain đơn giản với Javascript - Phần 1

Kiến trúc Blockchain - Tạo Blockchain đơn giản với Javascript - Phần 1

1. GIỚI THIỆU Blockchain là gì? Chắc hẳn các bạn đã nghe rất nhiều rồi. Vậy cụ thể cấu tạo và hoạt động của blockchain ra sao thì trong bài viết này mình sẽ cùng tìm hiểu cụ thể hơn nhé. Blockchain là gồm hai từ block và chain ghép lại. Block là một khối, trong mỗi khối sẽ chứa những thông tin cần thiết để tạo nên một block. Chain là chuỗi. Vậy Blockchain nghĩa là một chuỗi các block có liên quan đến nhau. 2. CẤU TRÚC BLOCKCHAIN Cụ thể một block chứa những thông gì? Và những ... »

Blockchain bằng ngôn ngữ Go - 2nd Step: Proof of Work

Blockchain bằng ngôn ngữ Go - 2nd Step: Proof of Work

Series lập trình blockchain với Go Block và blockchain sơ khai Lời mở đầu Trong bài viết đầu tiên của series về lập trình blockchain sử dụng ngôn ngữ Go, ta đã tạo được một data structure cơ bản cho blockchain của mình, đồng thời cũng implement các tính năng để các block mới có thể được add thêm vào chain. Tuy nhiên, khác với các blockchain hoàn chỉnh, hiện tại ở blockchain của chúng ta, các block được thêm vào 1 cách quá dễ dàng, không tốn công sức gì cả. Bài viết này sẽ giới thiệu bước tiếp ... »