Tag Archives: tutorial

Gắn râu Yua Mikami – Phần 3: Kết hợp Face Detection + Image Processing và… Toán Học

Series này gồm 3 phần:

  1. Cơ chế hoạt động của các filter Snapchat và Facebook Messenger
  2. Làm quen với các thư viện và API cần sử dụng
  3. Gắn râu bằng cách kết hợp Face Detection + Image Processing và… Toán Học

 

Sau 2 phần trước, chúng ta đã tìm hiểu về cơ chế các filter hoạt động, cũng như cách dùng thư viện để gắn râu vào ảnh.

Tuy nhiên, kết quả vẫn chưa được như mong muốn, chúng ta được tấm hình dị hợm như sau.

Để ghép râu cho khớp và đẹp, chúng ta cần phải:

  1. Xác định được độ dài hàm râu
  2. Tìm vị trí đặt râu cho phù hợp

Đây là lúc chúng ta sử dụng lại công nghệ Face Detection ở phần 1 để xác định những điều trên. Cùng bắt đầu thôi nào!

Continue reading Gắn râu Yua Mikami – Phần 3: Kết hợp Face Detection + Image Processing và… Toán Học

Gắn râu JAV Idol – Phần 2: Làm quen với các thư viện và API cần sử dụng

Series này gồm 3 phần:

  1. Cơ chế hoạt động của các filter Snapchat và Facebook Messenger
  2. Làm quen với các thư viện và API cần sử dụng
  3. Gắn râu bằng cách kết hợp Face Detection + Image Processing và… Toán Học

Ở phần trước, chúng ta đã tìm hiểu về cơ chế hoạt động của các filter trên Snapchat và Facebook. Sau đó, chúng ta đã setup code gọi API để nhận diện các đặc điểm của khuôn mặt.

Trong phần này, chúng ta sẽ đi sâu vào việc sử dụng kĩ thuật xử lý hình ảnh để… gắn râu vào khuôn mặt nhé!

Continue reading Gắn râu JAV Idol – Phần 2: Làm quen với các thư viện và API cần sử dụng

Gắn râu Sơn Tùng – Phần 1 : Bắt chước tính năng cực hay của Snapchat và Facebook

Hôm trước, mình có nhận được một câu hỏi tưởng chừng đơn giản nhưng lại rất hóc búa từ một bạn đọc:

Anh ơi, tại sao Facebook Messenger và Snapchat có thể làm các filter ngầu lòi, có thể gắn râu, gắn tai thỏ, đội mũ cho người dùng qua camera vậy.

Đằng sau một tính năng vui vui, đơn giản như vậy lại là một nền tảng các công nghệ cực kì phức tạp từ facial recognition cho đến image processing, hoàn toàn… không dễ một xíu nào.

Vì thế, trong bài này, chúng ta cùng tìm hiểu cơ chế hoạt động của chúng, sau đó làm một ứng dụng tương tự mang tên … gắn râu Sơn Tùng nhé.

Series này gồm 3 phần:

  1. Cơ chế hoạt động của các filter Snapchat và Facebook Messenger
  2. Làm quen với các thư viện và API cần sử dụng
  3. Gắn râu bằng cách kết hợp Face Detection + Image Processing và… Toán Học

 

Đây là ảnh gốc Sơn Tùng trước khi được gắn râu:

Animated GIF - Find & Share on GIPHY

Còn đây là ảnh Sơn Tùng sau khi đã gắn râu nhờ ứng dụng:

Animated GIF - Find & Share on GIPHY

Thú vị chưa nào? Chúng ta cùng bắt đầu nhé!

Continue reading Gắn râu Sơn Tùng – Phần 1 : Bắt chước tính năng cực hay của Snapchat và Facebook

Làm trò với Puppeteer – Phần 3: Bắt đầu testing với puppeteer

Bài viết gồm 3 phần

Trong phần này, mình sẽ hướng dẫn các bạn viết automation test trong NodeJS với Puppeteer và Jest. Chúng ta cùng thử viết test tìm kiếm hàng hoá trên lazada nhé.

Kiến thức của phần này tuy cô đọng, ngắn gọn nhưng cần khá nhiều kiến thức nền nên các bạn đọc lại những bài này để nhớ lại kiến thức lại nhé!

  1. Tổng quan về testing, unit test và automation test
  2. Viết Unit Test với C# (Giải thích vai trò của unit test trong việc làm code tốt hơn)
  3. Viết Unit Test với Jasmine (Giải thích các khái niệm hay gặp khi viết unit test)

Continue reading Làm trò với Puppeteer – Phần 3: Bắt đầu testing với puppeteer

Làm trò với Puppeteer – Phần 2: Cùng cào dữ liệu và vếu từ kênh 14

Bài viết gồm 3 phần:

Ở phần trước mình đã hướng dẫn cách cài đặt Puppeteer rồi nên phần này chúng ta bắt tay vào code ngay luôn cho nóng nha.

Hôm nay chúng ta sẽ tìm hiểu về API của Puppeteer, sau đó cùng nhau cào tin tức và vếu từ mương 14 nhé.

Continue reading Làm trò với Puppeteer – Phần 2: Cùng cào dữ liệu và vếu từ kênh 14

Làm trò với Puppeteer – Phần 1: Cùng tìm hiểu về Puppeteer và Headless Browser

Gần đây do đi làm phải code sml nên mình cũng hơi lười viết bài chuyên sâu về technical. Tuy vậy, mình cảm thấy lâu rồi không viết tutorial kĩ thuật nên hôm nay viết lại cho khỏi lụt nghề nhé.

Kì này, chúng ta sẽ cùng làm trò với thư viện Puppeteer của NodeJS, một thư viện cho phép chạy Chrome dưới chế độ headless browser.

Bài viết gồm 3 phần

Continue reading Làm trò với Puppeteer – Phần 1: Cùng tìm hiểu về Puppeteer và Headless Browser

[Tutorial] Hướng dẫn tích hợp Visual Studio với Github

Trước đây, để quản lý source code, ta thường sử dụng SVN, host toàn bộ source code trên google code. Trong vòng nhiều năm gần đây, Git đang trở thành 1 xu thế mới, thay thế dần cho SVN. Hầu như các thư viện javascript, css nổi tiếng hiện giờ đều đặt đại bản doanh trên github. Google Code sẽ đóng cửa vào năm sau, vì vậy hầu như các project mới bây giờ đều được host trên Github. Mình viết bài này nhằm hướng dẫn các bạn dùng Visual Studio có thể lấy code, submit code lên github dễ hàng với Visual Studio nhé.

Continue reading [Tutorial] Hướng dẫn tích hợp Visual Studio với Github

[Tutorial] Tạo ứng dụng chat với 50 dòng code, Firebase và AngularJS

Từ lúc viết blog tới giờ, mình chưa có bài nào hướng dẫn các bạn tạo ra một sản phẩm từ đầu tới cuối cả. Đến hôm nay nhìn lại, lương tâm cắn rứt nên mình sẽ hướng dẫn các bạn viết một thứ thật hoàng tráng. Nghĩ đi nghĩ lại, tính mình vốn lười, viết dài thì rất mất thời gian, do đó mình sẽ tìm cách code ít nhất, cho ra sản phẩm ảo nhất. Và đó là lý do bài viết này ra đời: Một ứng dụng chat chỉ với 50 dòng code.

Continue reading [Tutorial] Tạo ứng dụng chat với 50 dòng code, Firebase và AngularJS