Quy trình xác định kích thước thực phẩm

Một phần của tài liệu Nhận dạng và ước lượng calo trong thực phẩm luận văn thạc sĩ công nghệ thông tin (Trang 58 - 62)

3.3.2. Tính toán ước lượng calo

Kết quả của quá trình xử lý ảnh là lấy được diện tích bề mặt của đĩa và diện tích bề mặt của thực phẩm được tính bằng pixel.

Tỷ lệ giữa pixel thực phẩm và tỷ lệ pixel đĩa là hệ số để tính ra diện tích thực phẩm thực tế từ đó quy ra thể tích để tính toán khối lượng của thực phẩm.

- Thể tích của thực phẩm.

- Khối lượng riêng của thực phẩm.

3.3.2.1. Tính thể tích thực phẩm

Việc tính thể tích của vật thể cần các yếu tố sau - Diện tích bề mặt của thực phẩm;

- Độ dày của thực phẩm.

a) Tính diện tích của bề mặt thực phẩm * Trong quá trình xử lý hình ảnh sẽ lấy được

- Diện tích của đĩa tính bằng pixel (được ký hiệu trong quá trình tính là “area”).

- Diện tích của thực phẩm bằng pixel (được ký hiệu trong quá trình tính là “area 1”)

Gọi

Sdis diện tích thực tế của đĩa

Sfood diện tích thực tế của thực phẩm

Tỷ lệ diện tích thực tế và diện tích tính bằng pixel của đĩa được ký hiệu là “a”

A = Sdis /area

Diện tích thực phẩm tính theo công thức sau S food = a * area1

* Đề tài nhận dạng 9 loại thực phẩm và được giả sử quy về các hình dạng khác nhau gồm

- Hình cầu (quả táo, hành tây, cam, cà chua); - Hình trụ (quả chuối, khoai lang, cà rốt); - Hình tròn biết độ dày (trứng chiên); - Hình hộp chữ nhật (bánh mì)

b) Thể tích của mỗi loại được tính như sau - Tính thể tích hình cầu

r=√ Sfood

π

Trong đó Sfood là diện tích của thực phẩm

Thể tích ước lượng thực phẩm theo hình cầu

V= 4

3 ∗ π ∗ r 3

- Tính thể tích hình trụ

Gọi h là chiều cao của thực phẩm sau khi tách biên

h = hpix a∗ Trong đó

a là tỉ lệ pix và cm

hpix là chiều cao lớn nhất của hình bao thực phẩm tính bằng pixel Bánh kính của đáy trụ

r= Sfoodh

π∗ Thể tích của hình trụ được tính như sau

V = h r∗ π ∗ 2

Thể tích của thực phẩm trứng cũng được tính theo thể tích của hình trụ với giả thiết chiều dày của trứng là 0.3 cm

- Thể tích hình hộp

Thể tích của hình hộp được tính bằng cách lấy diện tích của thực phẩm nhân cho chiều dày thực phẩm (giả sử mỗi lát cắt bánh mì có độ dày bằng 1.5cm)

Thể tích khối hộp được tính như sau

V = 1.5 Sfood∗

3.3.2.2. Tính khối lượng của thực phẩm

Khối lượng của thực phẩm được tính theo công thức sau

Trong đó

m là khối lượng của thực phẩm

V là thể tích ước lượng của thực phẩm d là khối lượng riêng của thực phẩm

3.3.2.3. Quy đổi calo

Lượng Calo được quy đổi theo công thức sau

Calo = m Calo100∗100

Trong đó

m là khối lượng của thực phẩm

Calo100 Lượng Calo của thực phẩm quy đổi trên 100g thực phẩm Lượng calo trên 100g được lấy từ nguồn dữ liệu được công bố và kiểm chứng bởi Bộ Nông nghiệp Hoa Kỳ [18]

Các thực phẩm được gắn nhãn như Bảng 3.1 dưới đây

Bảng 3.1. Khối lượng riêng và lượng calo trên 100g thực phẩm

Loại thực phẩm

Khối lượng riêng (g/cm3)

Calo trên 100

gram (kcal) Label

Hình dạng quy đổi Apple 0.609 53 1 Hình cầu Banana 0.94 89 2 Hình trụ Bread 0.23 26.6 3 Hình khối hộp Carrot 1.04 41 4 Hình trụ Egg 1.03 155 5 Hình tròn Onion 0.96 40 6 Hình cầu Orange 1.03 47 7 Hình cầu Sweetpotato 1.03 85.8 8 Hình trụ Tomato 0.47 18 9 Hình cầu

3.4. Ứng dụng Android

- Giao diện người dùng (UI User Interface)

- Giao diện ứng dụng được thiết kế một cách thân thiện với người sử dụng, dễ sử dụng và được xây dựng trên nền tảng Android Google flatform.

- Giao diện được thiết kế như sau (Hình 3.13) - Màn hình giao diện 1 (Main Activity) gồm + Tên phần mềm (Calories counter),

+ Ngày giờ tự động; + Khu vực hiển thị;

+ Nút nhấn chụp hình và lựa chọn hình từ calo; + Tổng số calo nhận được.

Một phần của tài liệu Nhận dạng và ước lượng calo trong thực phẩm luận văn thạc sĩ công nghệ thông tin (Trang 58 - 62)