Giới thiệu dự án

Trong kỷ nguyên Công nghiệp 4.0, tự động hóa đóng vai trò xương sống nhằm nâng cao năng suất, tối ưu hóa chi phí vận hành và giảm thiểu sai sót do con người. Theo thống kê từ Liên đoàn Robot Quốc tế (IFR), mật độ robot trong các nhà máy sản xuất toàn cầu đã tăng trưởng với tốc độ trung bình hàng năm (CAGR) trên 12% trong giai đoạn 2018–2022. Tuy nhiên, rào cản lớn nhất đối với các dây chuyền lắp ráp và đóng gói tự động linh hoạt hiện nay là khả năng thích ứng với các vật thể có hình dạng bất đối xứng, đường biên phức tạp và nằm ở các góc xoay ngẫu nhiên trên mặt phẳng làm việc.

+------------------+      +-------------------+      +----------------------+
|  Cimsum Camera   | ---> | NVIDIA Jetson Nano| ---> | Arduino UNO R3       |
| (RGB 2560x1440)  |      | (RetinaFace Multi)|      | (PCA9685 PWM Driver) |
+------------------+      +-------------------+      +----------------------+
                                     |                           |
                                     v                           v
                           [Inverse Kinematics]        [Yahboom 5-DOF Robot]
                           [D-H Transformations]       [Closed-loop Grasping]

Problem Statement: Các giải pháp thị giác máy truyền thống (sử dụng mẫu khuôn cố định - template matching hoặc phân đoạn màu sắc đơn thuần) hay các mô hình Object Detection 2D thông thường chỉ trích xuất tâm hình học (bounding box center), không cung cấp đủ thông tin về góc xoay ($\theta$) và hướng tiếp cận tối ưu của tay kẹp. Ngược lại, các hệ thống thị giác 3D (RGB-D, LiDAR point clouds) tuy giải quyết được bài toán 6D pose nhưng đòi hỏi tài nguyên tính toán lớn, phần cứng đắt đỏ, độ trễ xử lý cao và khó khả thi trên thiết bị nhúng thời gian thực (real-time edge computing).

Đồ án tốt nghiệp chuyên ngành Cơ điện tử tại Trường Đại học Bách Khoa Hà Nội với đề tài "Phát triển mô hình học máy phát hiện và định vị vật thể ứng dụng trong điều khiển cánh tay robot" được thực hiện nhằm giải quyết trực tiếp điểm nghẽn kỹ thuật này.

Mục tiêu dự án

  1. Thiết kế và huấn luyện mô hình học sâu đa nhiệm (Multi-task Learning): Tùy biến kiến trúc mạng nơ-ron tích chập (CNN) dựa trên nền tảng RetinaFace để đồng thời thực hiện 3 tác vụ: phân loại vật thể (Classification), nhận diện bao đóng (Bounding Box Regression) và định vị chính xác 6 điểm quan trọng (6-Keypoint Landmark Detection) trên các phôi mẫu cơ khí phức tạp.
  2. Tối ưu hóa mô hình cho thiết bị tính toán nhúng: Triển khai mạng nơ-ron với backbone MobileNet trên máy tính nhúng NVIDIA Jetson Nano, đảm bảo tốc độ suy luận đạt chuẩn thời gian thực ($\ge 20\text{ FPS}$).
  3. Giải bài toán động học ngược (Inverse Kinematics - IK): Xây dựng hệ thống giải thuật biến đổi tọa độ từ ảnh 2D sang không gian làm việc thực tế của cánh tay robot Yahboom Dofbot 5 bậc tự do (5-DOF) thông qua phương pháp tham số Denavit-Hartenberg (D-H).
  4. Hiệu chuẩn và thực nghiệm hệ thống: Thiết lập giải thuật nội suy bù sai số quang học và cơ khí, kiểm chứng độ chính xác gắp thả trên phôi thực nghiệm in 3D.

Phạm vi và Giới hạn

  • Phạm vi nghiên cứu: Định vị và phân loại 2 lớp chi tiết cơ khí có hình dáng bất đối xứng trên bề mặt phẳng làm việc 2.5D; điều khiển cánh tay robot 5-DOF Yahboom Dofbot hoàn thành chu trình pick-and-place.
  • Giới hạn kỹ thuật: Sử dụng camera RGB 2D đơn (không có kênh Depth); không gian làm việc giới hạn trong bán kính hữu hiệu của robot $R \in [r_{\min}, r_{\max}]$; vật thể không bị che khuất (non-occluded).

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Phương pháp Ưu điểm Nhược điểm Độ trễ suy luận Chi phí triển khai
Khuôn mẫu cố định (Template Matching / Laser) Độ chính xác cao ($\pm 0.5\text{ mm}$), thuật toán đơn giản, không cần GPU Chỉ gắp được vật đúng chiều cố định; mất tính linh hoạt khi đổi mẫu $< 10\text{ ms}$ Thấp ($50 - $150)
Thị giác 3D (RGB-D Camera / Point Cloud DL) Ước lượng tư thế 6D tự do, gắp được trong không gian 3D phức tạp Cảm biến nhiễu ở bề mặt phản quang, tính toán nặng, giá thành rất cao $100 - 300\text{ ms}$ Rất cao ($1,500 - $5,000)
Object Detection 2D (YOLO / SSD cơ bản) Tốc độ cao ($> 30\text{ FPS}$), nhận diện đa lớp tốt Chỉ cho bounding box tâm $2\text{D}$, không trích xuất được vector góc xoay của vật $15 - 30\text{ ms}$ Trung bình ($200 - $400)
RetinaFace 6-Keypoint (Giải pháp đề xuất) Nhận diện lớp, bounding box và 6 điểm neo định hướng góc gắp chính xác Phụ thuộc vào dữ liệu gán nhãn keypoint chuẩn xác $\mathbf{\sim 50\text{ ms}}$ ($\mathbf{20\text{ FPS}}$) Tối ưu ($\mathbf{\sim $350}$)

Phân tích yêu cầu theo mô hình MoSCoW

  • Must have: Nhận diện đúng 2 loại phôi mẫu; trích xuất 6 tọa độ keypoints $(x_i, y_i)_{i=1}^6$; giải bài toán IK điều khiển 5 động cơ servo góc quay $q_1 \dots q_5$; tốc độ xử lý $\ge 15\text{ FPS}$ trên Jetson Nano.
  • Should have: Bù sai số méo quang học bằng hàm phi tuyến; độ chính xác định vị gắp $\le 5\text{ mm}$; giao diện trực quan hóa kết quả keypoints.
  • Could have: Mở rộng tập dữ liệu cho 5-10 loại linh kiện phức tạp hơn; tự động nhận diện vùng làm việc động qua băng tải.
  • Won't have (lần này): Xử lý vật thể xếp chồng lộn xộn (bin-picking) 3D đa tầng.

Thiết kế hệ thống

Kiến trúc tổng thể gồm 3 tầng: Perception Layer (Cimsum Document Scanner Camera), Processing Layer (NVIDIA Jetson Nano 4GB B01 chạy Ubuntu 18.04 LTS, PyTorch 1.8.0, OpenCV 4.5.1), và Actuation Layer (Arduino UNO R3 ATmega328P, mạch băm xung PWM PCA9685, robot Yahboom Dofbot 5-DOF).

+-----------------------------------------------------------------------------+
|                            JETSON NANO EDGE SYSTEM                          |
|                                                                             |
|  +--------------------+    +----------------------+    +-----------------+  |
|  | Input Image        |--->| MobileNet Backbone   |--->| Feature Pyramid |  |
|  | (2560x1440 -> 640) |    | (Depthwise Conv)     |    | Network (FPN)   |  |
|  +--------------------+    +----------------------+    +-----------------+  |
|                                                                 |           |
|            +-----------------------+----------------------------+           |
|            |                       |                            |           |
|            v                       v                            v           |
|     +--------------+       +---------------+            +---------------+   |
|     | Class Head   |       | BBox Reg Head |            | Keypoint Head |   |
|     | (Softmax)    |       | (Smooth L1)   |            | (6 Landmark)  |   |
|     +--------------+       +---------------+            +---------------+   |
|            |                       |                            |           |
|            +-----------------------+----------------------------+           |
|                                    |                                        |
|                                    v                                        |
|                      +---------------------------+                          |
|                      | Post-processing & NMS     |                          |
|                      | Polynomial Calibration    |                          |
|                      +---------------------------+                          |
|                                    |                                        |
|                                    v                                        |
|                      +---------------------------+                          |
|                      | Inverse Kinematics Engine |                          |
|                      | [q1, q2, q3, q4, q5]      |                          |
|                      +---------------------------+                          |
+------------------------------------|----------------------------------------+
                                     | I2C / UART Serial (115200 bps)
                                     v
+-----------------------------------------------------------------------------+
|                            ACTUATION CONTROLLER                             |
|                                                                             |
|  +------------------+      +---------------------+      +----------------+  |
|  | Arduino UNO R3   | ---> | PCA9685 PWM Driver  | ---> | 5x Bus Servos  |  |
|  | Microcontroller  |      | 16-Channel 12-Bit   |      | + 1x Gripper   |  |
|  +------------------+      +---------------------+      +----------------+  |
+-----------------------------------------------------------------------------+

Bảng thông số phần cứng và công nghệ

Thành phần Thông số kỹ thuật chi tiết Phiên bản / Môi trường
SBC (Edge AI) NVIDIA Jetson Nano 4GB, 128-core Maxwell GPU, Quad-core ARM A57 JetPack 4.6 (L4T 32.6.1), CUDA 10.2, cuDNN 8.2
Frameworks Python 3.8, PyTorch 1.8.0, Torchvision 0.9.0, TensorRT 8.0 OpenCV 4.5.1, NumPy 1.19.5, LabelMe 4.5.6
Sensor (Camera) Cimsum Document Scanner, cảm biến CMOS, độ phân giải $2560 \times 1440$ USB 2.0 UVC, FPS 30, Tích hợp đèn LED vòng
Cơ cấu chấp hành Yahboom Dofbot 5-DOF, Tải trọng gắp $200\text{g}$, Tầm với bán kính $250\text{ mm}$ Động cơ Servo số, sai số lắp ghép $e = \pm 0.5\text{ mm}$
Vi điều khiển Arduino UNO R3 (Microchip ATmega328P 16MHz) Arduino IDE 1.8.19, Giao tiếp I2C/UART Baudrate 115200

Phương pháp nghiên cứu và Lộ trình triển khai

Dự án áp dụng mô hình phát triển lặp nhanh theo chuẩn kỹ thuật cơ điện tử (V-Model biến thể Agile):

Tuần 1-3: Nghiên cứu lý thuyết, Thiết kế mẫu phôi SolidWorks & In 3D
Tuần 4-6: Lắp ráp phần cứng, Thiết lập hệ camera & Thu thập 4,387 ảnh
Tuần 7-9: Tùy biến kiến trúc RetinaFace-MobileNet & Huấn luyện mô hình
Tuần 10-12: Thiết lập bảng DH, Giải toán Inverse Kinematics & Viết Driver I2C
Tuần 13-14: Đo lường sai số quang học, Lập hàm nội suy hiệu chuẩn & Tích hợp
Tuần 15-16: Đánh giá mAP, PCK, kiểm thử chu trình gắp thực tế & Viết báo cáo

Implementation và kết quả

Quá trình phát triển và Thuật toán cốt lõi

1. Mạng xương sống MobileNet và Tích chập tách chiều sâu (Depthwise Separable Convolution)

Để mô hình RetinaFace chạy mượt mà trên GPU Maxwell 128 lõi của Jetson Nano, mạng xương sống (backbone) MobileNet sử dụng cơ chế tích chập tách biệt chiều sâu gồm hai bước: Depthwise Convolution ($k \times k \times 1$) và Pointwise Convolution ($1 \times 1 \times c$).

Tỷ lệ khối lượng tính toán giữa tích chập tách chiều sâu và tích chập thông thường được tính bằng công thức: $$\text{Cost Ratio} = \frac{k \times k \times c \times h' \times w' + c \times c' \times 1 \times 1 \times h' \times w'}{k \times k \times c \times c' \times h' \times w'} = \frac{1}{c'} + \frac{1}{k^2}$$

Với kernel $k=3$, khối lượng tính toán giảm khoảng 8 đến 9 lần so với Standard 2D Convolution nhưng vẫn bảo toàn khả năng biểu diễn đặc trưng không gian.

2. Hàm mất mát đa nhiệm (Multi-task Loss Function)

Hàm mất mát tổng hợp $\mathcal{L}{total}$ tối ưu đồng thời 3 thành phần: $$\mathcal{L}{total} = \mathcal{L}{cls}(p_i, p_i^) + \lambda_1 p_i^ \mathcal{L}{reg}(t_i, t_i^) + \lambda_2 p_i^ \mathcal{L}_{pts}(l_i, l_i^*)$$

Trong đó:

  • $\mathcal{L}_{cls}$ là Cross-Entropy Loss cho phân loại lớp (Class prediction).
  • $\mathcal{L}_{reg}$ là Smooth L1 Loss tính sai số tọa độ Bounding box $t_i = (x, y, w, h)$.
  • $\mathcal{L}_{pts}$ là Smooth L1 Loss tính sai sai số 6 tọa độ keypoints $l_i = (x_1, y_1, \dots, x_6, y_6)$.
  • $p_i^$ là nhãn nhị phân ($p_i^ = 1$ nếu là đối tượng dương tính - positive anchor, $p_i^* = 0$ nếu là nền - background). Các hệ số cân bằng trọng số thực nghiệm được đặt $\lambda_1 = 1.0, \lambda_2 = 0.5$.
import torch
import torch.nn as nn
import torch.nn.functional as F

class MultiTaskRetinaLoss(nn.Module):
    def __init__(self, lambda_bbox=1.0, lambda_pts=0.5):
        super(MultiTaskRetinaLoss, self).__init__()
        self.lambda_bbox = lambda_bbox
        self.lambda_pts = lambda_pts

    def forward(self, pred_cls, pred_box, pred_pts, target_cls, target_box, target_pts):
        # 1. Classification Loss (Cross Entropy)
        loss_cls = F.cross_entropy(pred_cls, target_cls)
        
        # Mask for positive anchors
        pos_mask = (target_cls > 0)
        num_pos = pos_mask.sum().clamp(min=1.0)
        
        # 2. Bounding Box Regression Loss (Smooth L1)
        loss_box = F.smooth_l1_loss(pred_box[pos_mask], target_box[pos_mask], reduction='sum') / num_pos
        
        # 3. Keypoint Landmark Regression Loss (Smooth L1 for 6 points = 12 coordinates)
        loss_pts = F.smooth_l1_loss(pred_pts[pos_mask], target_pts[pos_mask], reduction='sum') / num_pos
        
        total_loss = loss_cls + self.lambda_bbox * loss_box + self.lambda_pts * loss_pts
        return total_loss, loss_cls, loss_box, loss_pts

3. Thiết lập bảng tham số Denavit-Hartenberg (D-H) và Động học ngược

Robot Yahboom Dofbot 5-DOF có cấu trúc 5 khâu nối quay. Hệ trục tọa độ được gán theo quy tắc chuẩn Denavit-Hartenberg.

       Z0 ^             Z1 ^               Z2 ^             Z3 ^        Z4 ^  (Gripper)
          |                |                  |                |           |=====> X4
  [Base]--+--[Joint 1]-----+---[Joint 2]------+---[Joint 3]----+--[J4/J5]--+
             d1 = 3cm          a2 = 8.3cm         a3 = 8.3cm     a4 = 7.5cm  L_grip = 11cm
Khâu ($i$) $\alpha_{i-1}$ (rad) $a_{i-1}$ (cm) $d_i$ (cm) $\theta_i$ (Biến khớp)
1 $0$ $0$ $d_1 = 3.0$ $q_1$
2 $\pi / 2$ $0$ $0$ $q_2$
3 $0$ $a_2 = 8.3$ $0$ $q_3$
4 $0$ $a_3 = 8.3$ $0$ $q_4$
5 (Tool) $\pi / 2$ $a_4 = 7.5$ $0$ $q_5$ (Góc xoay kẹp)

Góc xoay của tay kẹp $q_5$ được suy ra trực tiếp từ vector định hướng tạo bởi 2 điểm keypoint mấu chốt ($p_1, p_2$): $$q_5 = \arctan2\left(y_{p2} - y_{p1},, x_{p2} - x_{p1}\right)$$

Tọa độ vị trí mục tiêu $(X_0, Y_0, Z_0)$ kết hợp với góc tiếp cận của khâu tác động cuối cho phép tính toán tường minh các biến khớp $(q_1, q_2, q_3, q_4, q_5)$ thông qua phương pháp chiếu hình học giải tích đóng (closed-form geometric IK).

Kiểm thử và Đánh giá thực nghiệm

1. Dữ liệu thực nghiệm

Tập dữ liệu thu thập qua camera Cimsum gồm 4,387 ảnh phân bố ở các điều kiện ánh sáng (300 Lux – 900 Lux) và góc đặt phôi đa dạng:

  • Tập huấn luyện (Training Set): 3,896 ảnh (đã áp dụng Data Augmentation: Random Flip, Color Jitter, Scaling).
  • Tập kiểm tra (Testing Set): 491 ảnh độc lập hoàn toàn.

2. Kết quả huấn luyện mô hình thị giác

Chỉ số đánh giá Giá trị thực nghiệm Tiêu chuẩn đánh giá
mAP (Detection @ IoU=0.5) $98.42%$ PASCAL VOC Metric
PCK @ $\alpha = 0.05$ (Keypoints) $96.15%$ Ngưỡng sai số điểm $\le 5%$ đường chéo BBox
MSE (Mean Squared Error) $1.84\text{ px}^2$ Sai số trung bình khoảng cách pixel
Tốc độ suy luận (Jetson Nano) $20.4\text{ FPS}$ ($\sim 49\text{ ms/frame}$) Tối ưu hóa qua TensorRT FP16

3. Bù sai số quang học thực nghiệm (Calibration)

Khi chuyển đổi từ tọa độ pixel sang tọa độ thực tế của robot, ống kính camera góc rộng gây ra hiện tượng méo quang học phi tuyến (lens distortion) ở các góc bàn làm việc. Nhóm tác giả xây dựng 2 hàm đa thức nội suy bậc 2 để hiệu chuẩn tọa độ đo: $$\begin{cases} X_{calib} = c_{x2} X_{cam}^2 + c_{x1} X_{cam} + c_{x0} \ Y_{calib} = c_{y2} Y_{cam}^2 + c_{y1} Y_{cam} + c_{y0} \end{cases}$$

Phân phối sai số trước hiệu chuẩn:  [---- Sai số tối đa: 12.8 mm ----]
Phân phối sai số sau hiệu chuẩn:    [-- Trung bình: 4.1 mm --] (Giảm 68%)
  • Sai số trước hiệu chuẩn: Sai lệch lớn nhất ở rìa vùng làm việc lên tới $12.8\text{ mm}$.
  • Sai số sau hiệu chuẩn: Sai số trung bình giảm xuống còn $\sim 4.1\text{ mm}$, nằm trong phạm vi bù cơ khí của độ mở má kẹp tay robot Yahboom ($\pm 6\text{ mm}$ dung sai tiếp xúc).

Đổi mới và đóng góp

  1. Chuyển giao giải thuật Multi-task RetinaFace sang lĩnh vực Robot Pick-and-Place: Đột phá chuyển đổi cấu trúc mạng vốn dùng để nhận dạng khuôn mặt (Face Landmark Detection với 5 điểm mắt, mũi, miệng) thành mạng nhận diện tư thế linh kiện cơ khí 6 điểm (6-Keypoint Pose Estimation), giải quyết triệt để bài toán xác định góc kẹp của vật thể bất đối xứng.
  2. Triển khai Edge AI thời gian thực chi phí tối ưu: Tinh chỉnh kiến trúc MobileNet-RetinaFace giúp hệ thống chạy mượt mà $20.4\text{ FPS}$ ngay trên máy tính nhúng công suất thấp NVIDIA Jetson Nano ($10\text{W}$ TDP), tiết kiệm chi phí phần cứng hơn $80%$ so với việc trang bị máy tính trạm công nghiệp (IPC) gắn card đồ họa rời.
  3. Mô hình hóa khép kín từ Thị giác đến Điều khiển Động học: Xây dựng pipeline tích hợp liền mạch từ khâu nhận ảnh $\rightarrow$ suy luận deep learning $\rightarrow$ hiệu chuẩn đa thức phi tuyến $\rightarrow$ giải thuật IK $\rightarrow$ truyền thông gói tin I2C điều chế độ rộng xung (PWM) đến từng servo cơ khí.

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng trong công nghiệp

  • Dây chuyền lắp ráp linh kiện điện tử (SMT/PCB Sub-assembly): Tự động phát hiện và xoay gắp các socket, cổng kết nối, linh kiện dán có biên dạng phức tạp đặt lộn xộn trên khay nạp phôi.
  • Đóng gói bánh kẹo và thực phẩm: Robot định vị chính xác đầu đuôi của các thanh kẹo, bánh quy có hình dạng uốn lượn để đóng gói vào khay định hình tốc độ cao.
  • Phân loại sản phẩm cơ khí sau gia công dập/phay: Tách biệt phôi lỗi, phôi chuẩn và sắp xếp theo đúng chiều quy định vào đồ gá chuẩn bị cho công đoạn mạ hoặc xử lý nhiệt.

Phân tích chi phí và Khả năng hoàn vốn (ROI)

Ước tính tổng chi phí đầu tư hệ thống (CAPEX): ~$550 USD
  + NVIDIA Jetson Nano Developer Kit: $150
  + Yahboom Dofbot 5-DOF + Servos: $220
  + Camera Cimsum + Khung chiếu sáng: $80
  + Nguồn công nghiệp, Arduino, Phụ kiện in 3D: $100

So sánh hiệu quả với nhân công thủ công:
  + Lương nhân công phân loại/đóng gói: ~$350 USD/tháng
  + Khả năng hoàn vốn (Payback Period): ~1.5 - 2.0 tháng vận hành

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Ràng buộc mặt phẳng 2.5D: Mô hình giả định vật thể nằm trên mặt phẳng cố định với độ cao $Z$ không đổi; chưa ước tính được góc nghiêng trục $X, Y$ (Pitch, Roll) khi vật bị kênh hoặc xếp chồng.
  • Độ chính xác định vị cơ khí: Sai số tổng thể hệ thống còn ở mức $\sim 4\text{ mm}$ do độ rơ của các động cơ servo RC giá rẻ và giới hạn độ phân giải của thuật toán hồi quy keypoint trên ảnh nén.

Hướng phát triển tiếp theo

  • Tích hợp mạng PointNet++ / Point-Voxel CNN kết hợp camera RGB-D giá rẻ (Intel RealSense D435) để nâng cấp lên bài toán ước lượng tư thế 6D (6-DoF Pose Estimation) trong không gian 3D thực thụ.
  • Bổ sung bộ lọc Kalman Filter và thuật toán bám vết đối tượng (DeepSORT) để robot thực hiện tác vụ gắp động vật thể liên tục ngay trên băng tải đang chuyển động tốc độ $0.2 - 0.5\text{ m/s}$.

Đối tượng hưởng lợi

+-----------------------------------------------------------------------------+
|                             ĐỐI TƯỢNG HƯỞNG LỢI                             |
|                                                                             |
|  [Sinh viên / Nghiên cứu sinh]  --> Nguồn tham khảo hoàn chỉnh về Computer   |
|                                     Vision, Multi-task Loss & Kinematics.   |
|                                                                             |
|  [Kỹ sư phần mềm nhúng / AI]    --> Mẫu thiết kế triển khai TensorRT, tối   |
|                                     ưu hóa Edge AI Pipeline trên Jetson.    |
|                                                                             |
|  [Doanh nghiệp sản xuất vừa/nhỏ]--> Giải pháp tự động hóa gắp nhả linh hoạt |
|                                     với chi phí cực thấp, ROI dưới 3 tháng. |
+-----------------------------------------------------------------------------+

Câu hỏi thường gặp

1. Cần cấu hình phần cứng tối thiểu nào để triển khai hệ thống này?

Hệ thống yêu cầu một máy tính nhúng NVIDIA Jetson Nano (bản 4GB RAM), nguồn cấp $5\text{V}-4\text{A}$ chuẩn jack DC, 01 camera RGB hỗ trợ chuẩn UVC độ phân giải tối thiểu HD ($1280 \times 720$), 01 mạch Arduino UNO R3 kết hợp mạch điều khiển PWM 16 kênh PCA9685 và cánh tay robot tối thiểu 4-DOF hoặc 5-DOF.

2. Tại sao lại chọn RetinaFace thay vì các mô hình chuyên biệt như YOLOv5 hay YOLOv7-Pose?

RetinaFace được thiết kế nguyên bản cho bài toán multi-task cực kỳ hiệu quả với kiến trúc Feature Pyramid Network (FPN) 3 tầng kết hợp với Context Module, giúp trích xuất đồng thời bounding box và các điểm landmark nhỏ với độ chính xác cao ở mật độ điểm ảnh thấp. Backbone MobileNet của RetinaFace tối ưu hóa sâu các phép tính Depthwise Separable Convolution, cho độ ổn định FPS cao trên phần cứng nhúng cũ như GPU Maxwell.

3. Làm thế nào để mở rộng mô hình cho một sản phẩm cơ khí mới?

Người dùng chỉ cần thu thập khoảng 300–500 ảnh của vật thể mới dưới các góc xoay khác nhau, sử dụng công cụ labelme định nghĩa 6 điểm keypoint đặc trưng tương ứng trên đường biên, cập nhật lại số lượng num_classes trong file cấu hình mạng và tiến hành Fine-tuning (Transfer Learning) từ bộ trọng số đã huấn luyện trước trong khoảng 50 epochs.

4. Hệ thống xử lý thế nào khi cường độ ánh sáng môi trường thay đổi đột ngột?

Hệ thống sử dụng camera Cimsum có trang bị hệ thống chiếu sáng đèn LED vòng chủ động (active LED illumination) cố định góc chiếu từ trên xuống, kết hợp với các bước tiền xử lý ảnh tăng cường độ tương phản (CLAHE) và kỹ thuật Data Augmentation biến thiên ngẫu nhiên độ sáng trong quá trình huấn luyện, đảm bảo độ ổn định nhận diện khi ánh sáng môi trường dao động từ 300 đến 900 Lux.

5. Sai số 4mm có ảnh hưởng đến khả năng gắp linh kiện của robot không?

Má kẹp (gripper) của robot Yahboom có hành trình mở tối đa $54\text{ mm}$ và được thiết kế vấu kẹp mềm có gắn lớp đệm cao su đàn hồi. Dung sai tự định tâm khi ngón kẹp khép lại là $\pm 6\text{ mm}$, do đó sai số $4.1\text{ mm}$ hoàn toàn nằm trong dải làm việc an toàn, đảm bảo tỷ lệ kẹp phôi thành công trong thực nghiệm đạt trên $94%$.


Kết luận

Đồ án tốt nghiệp "Phát triển mô hình học máy phát hiện và định vị vật thể ứng dụng trong điều khiển cánh tay robot" đã hoàn thành xuất sắc các mục tiêu nghiên cứu và ứng dụng thực tiễn. Đề tài chứng minh tính khả thi vượt trội của việc áp dụng mô hình học sâu đa nhiệm RetinaFace-MobileNet vào bài toán định vị phôi cơ khí bất đối xứng, kết hợp giải thuật động học ngược Denavit-Hartenberg trên nền tảng máy tính nhúng Jetson Nano. Kết quả đạt được ($20.4\text{ FPS}$, mAP $98.42%$, sai số hiệu chuẩn $\sim 4.1\text{ mm}$) là tiền đề quan trọng để phát triển các hệ thống tay máy thông minh tự động hóa trong các nhà máy sản xuất hiện đại.