Thêm, sửa, xoá template (Admin):

Một phần của tài liệu Xây dựng ứng dụng iOS đếm vật thể mật độ cao trong hình ảnh dựa vào học máy và xử lý ảnh đồ án tốt nghiệp khoa đào tạo chất lượng cao ngành công nghệ thông tin (Trang 100)

4. MÔ HÌNH HỌC MÁY VÀ BỘ DỮ LIỆU

6.4.5. Thêm, sửa, xoá template (Admin):

Sau khi nhận được đề xuất từ người dùng, về mặt thêm template nhóm hiện đang chỉ thực hiện trên phương diện thủ công, chưa cho phép người dùng tương tác hoàn toàn với model cũng như việc training data. Với những template được người dùng đề xuất, nhóm sẽ chọn lọc và ưu tiên phát triển những template hợp lí, có mức độ ứng dụng cao, khả thi cho việc xây dựng trên ứng dụng hiện tại. Tiếp đến, thông qua người dùng và tìm kiếm trên internet, nhóm sẽ tạo dataset cho object mà người dùng mong muốn tối thiểu 2000 objects với mật độ >10 objects/hình sau đó tiến hành training dữ liệu tạo ra model. Với đánh giá các model có mức độ chính xác cao trên test set thì nhóm sẽ bắt đầu deploy model đó lên server và bắt đầu áp dụng thực tế trên ứng dụng. Admin sẽ là người dùng cuối thực hiện việc Add Template thông qua Add Template Screen, nhập đầy đủ thông tin bao gồm Name Field (tên của template), Drive ID Field (đường dẫn đến drive chứa model) và Description Field (mô tả cho template), chọn Select Photo Button để thêm ảnh đại diện cho template.

Hình 6.10 Các thành phần chính của Add Template Screen 6.4.6. Đánh giá sau mỗi lần đếm

Ở màn hình Count Screen, sau mỗi lần đếm và đưa ra kết quả, người dùng có thể tương tác với kết quả đó thông qua mục Rating nằm bên dưới kết quả. Nếu một template trong ứng dụng bị đánh giá không tốt quá nhiều lần (dưới 3 sao) thì nhóm sẽ tiến hành đánh giá nhận xét từ phía người dùng và retrain model lại nếu model thực sự chưa tốt, chưa đáp ứng được nhu cầu thực tế.

Chương 6: ỨNG DỤNG iOS

Hình 6.11 Màn hình Count Result Screen 6.5. Prototype

6.5.1. Screenflow

Hình 6.12 Application’s Screenflow

6.5.2. Danh sách các màn hình

No Screen Name Description

SC02 Count Screen Màn hình thực hiện chức năng đếm vật thể

SC03 SelectPhotoScreen Màn hình hiển thị thông báo khi người dùng ấn Select Photo Button

SC04 SelectedPhotoScreen Màn hình sau khi người dùng chọn ảnh để thực hiện chức năng đếm vật thể

SC05 ChangedPhotoScreen Màn hình sau khi người dùng thay đổi ảnh đã chọn, khi đó background app sẽ thay đổi tuỳ thuộc vào hình ảnh

SC06 Count Result Screen Màn hình hiển thị kết quả đếm vật thể

SC07 Share Result Screen Màn hình cho phép người dùng thực hiện thao tác chia sẻ kết quả vừa nhận được

SC08 Tap Image Screen Màn hình sau khi người dùng ấn vào hình ảnh thể hiện kết quả

SC09 Zoom Image Screen Màn hình sau khi người dùng phóng to ảnh kết quả đếm vật thể

SC10 Guest Tab Screen Màn hình hiển thị khi người dùng chưa đăng nhập ấn vào thanh Tab menu

SC11 Admin Tab Screen Màn hình hiển thị khi admin ấn vào thanh Tab menu

SC12 User Tab Screen Màn hình người dùng đã đăng nhập ấn vào thanh Tab menu

SC13 Login Screen Màn hình cho phép người dùng thực hiện chức năng đăng nhập

SC14 Register Screen Màn hình cho phép người dùng thực hiện chức năng đăng kí

SC15 Template List Screen (Admin) Màn hình hiển thị danh sách template hiện có của ứng dụng

SC16 Remove Template Screen (Admin) Màn hình hiển thị thao tác Remove cho phép Admin xoá template

Chương 6: ỨNG DỤNG iOS

SC17 Add Template Screen (Admin) Màn hình cho phép Admin thực hiện chức năng thêm template

SC18 Template Photo Added Screen (Admin)

Màn hình sau khi Admin thêm ảnh cho template

SC19 Propose Template Screen (User) Màn hình cho phép người dùng đề xuất Template

SC20 Object Photo Added Screen (User) Màn hình sau khi người dùng thêm ảnh cho object

SC21 Count History Screen (Admin + User)

Màn hình hiển thị lịch sử đếm

SC22 Remove History Screen (Admin) Màn hình cho phép Admin thực hiện thao tác xoá lịch sử.

Bảng 6.1 Danh sách các màn hình 6.6. Đặc tả các màn hình

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Menu

Button True Button

Button bật/ tắt hiển thị menu tab. 2 Template List True Collection View Data từ Api server

Collection view hiển thị danh sách các template hiện có, cho phép người dùng thao tác chọn template phù hợp mục đích sử dụng.

3 Template

Image True Image

Data từ Api server

Ảnh đại diện của template.

4 Template

Description True Text

Data từ Api Server

Tên và mô tả template.

5

Propose Template Header

True Header Header hiển thị phần

template đang được đề nghị.

6

Propose Template Button

True Button

Button điều hướng đến Propose Template Screen cho phép người dùng đề nghị template mới.

6.6.2. SC02.Count Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Template

Information True Text

Data từ Api server

Hiển thị thông tin template vừa được người dùng chọn 2 Select Photo Button True Button

Button cho phép người dùng thực hiện chức năng chọn ảnh để đếm

6.6.3. SC03.Select Image Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1

Take Photo Button

True Button

Nút chức năng cho phép người dùng chọn ảnh qua việc chụp ảnh bằng camera. 2 Select Photo Button True Button

Nút chức năng cho phép người dùng chọn ảnh qua thư viện ảnh của thiết bị.

3 Cancel

Button True Button Nút huỷ thao tác.

6.6.4. SC04.Selected Image Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Change Photo Button True Button Nút chức năng cho phép người dùng thay đổi ảnh vừa chọn.

2 Selected

Image True Image Hiển thị ảnh vừa được chọn.

3 Score

Slider True Slider

Slider tăng/giảm score cho kết quả phù hợp với mong muốn người dùng.

4 Confident

Checker True CheckView Bật/tắt hiển thị confident

5 Count

Button True Button

Nút chức năng cho phép người dùng thực hiện thao tác đếm vật thể trên ảnh vừa chọn.

6.6.5. SC05.Change Image Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Change Photo Button True Button Nút chức năng cho phép người dùng thay đổi ảnh vừa chọn.

2 Selected

Image True Image Hiển thị ảnh vừa được chọn.

3 Score

Slider True Slider

Slider tăng/giảm score cho kết quả phù hợp với mong muốn người dùng.

4 Confident

Checker True CheckView Bật/tắt hiển thị confident

5 Count

Button True Button

Nút chức năng cho phép người dùng thực hiện thao tác đếm vật thể trên ảnh vừa chọn.

6.6.6. SC06.Count Result Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Result

Image True Image

Data từ Api server

Hình ảnh hiển thị kết quả với các vòng tròn xác định vị trí vật thể được đếm. 2 Number of Object True Image Data từ Api server

Hiển thị kết quả số các vật thể đã đếm được.

3 Counting

Time True Slider

Data từ Api server

Hiển thị thời gian đếm

4 Rating True RatingView

Cho phép người dùng đánh giá kết quả, phản hồi về phía người phát triển.

5 Share

Button True Button

Nút chức năng cho phép người dùng thực hiện chia sẻ kết quả.

6.6.7. SC07.Share Result Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Share

Sheet True

Share Sheet

Sheet cho phép người dùng thực hiện chức năng chia sẻ kết quả.

6.6.8. SC08.Tap Image Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Number

of Object True Text

Data từ Api server

Hiển thị kết quả số các vật thể đã đếm được.

2 Close

button True Button

Nút chức năng thoát chế độ xem ảnh kết quả.

3 Result

Image True Image

Data từ Api server

Hình ảnh hiển thị kết quả với các vòng tròn xác định vị trí vật thể được đếm.

6.6.9. SC09.Zoom Image Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Result

Image True Image

Data từ API

Hình ảnh hiển thị kết quả với các vòng tròn xác định vị trí vật thể được đếm.

6.6.10.SC10.Guest Tab Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Login

Button True Button

Nút chức năng cho phép người dùng điều hướng đến Login Screen. 2 Count History Button True Button

Nút chức năng cho phép người dùng điều hướng đến Count History Screen. 3 Propose Template Button True Button

Nút chức năng cho phép người dùng điều hướng Propose Template Screen.

6.6.11.SC11.Admin Tab Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Username True Text

Nút chức năng cho phép người dùng điều hướng đến Login Screen.

2 Type of

User True Text

Nút chức năng cho phép người dùng điều hướng đến Count History Screen.

3 Avatar True Image

Nút chức năng cho phép người dùng điều hướng Propose Template Screen. 4 Add Template Button True Button

Nút chức năng cho phép người dùng điều hướng Add

Template Screen. 5 Template List Button True Button

Nút chức năng cho phép người dùng điều hướng đến

Template List Screen.

6

Count History Button

True Button

Nút chức năng cho phép người dùng điều hướng đến Count History Screen. 7 Propose Template Button True Button

Nút chức năng cho phép người dùng điều hướng Propose Template Screen.

8 Log out

Button True Button

Nút chức năng cho phép người dùng đăng xuất khỏi tài khoản.

6.6.12.SC12.User Tab Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Username True Text

Nút chức năng cho phép người dùng điều hướng đến Login Screen.

2 Type of

User True Text

Nút chức năng cho phép người dùng điều hướng đến Count History Screen.

3 Avatar True Image

Nút chức năng cho phép người dùng điều hướng Propose Template Screen. 4 Count History Button True Button

Nút chức năng cho phép người dùng điều hướng đến Count History Screen. 5 Propose Template Button True Button

Nút chức năng cho phép người dùng điều hướng Propose Template Screen.

6 Log out

Button True Button

Nút chức năng cho phép người dùng đăng xuất khỏi tài khoản.

6.6.13.SC13.Login Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Register

Link True

Navigation Link

Nút chức năng cho phép người dùng điều hướng đến Register Screen.

2 Email

Field True Text Field Field điền email người dùng

3 Password

Field True Text Filed

Field điền mật khẩu cho email đã đăng kí

4 Login

Button True Button

Nút chức năng cho phép người dùng thực hiện chức năng đăng nhập. Nếu thành công, ứng dụng sẽ tự động điều hướng về Home Screen.

5 Forgot

Password True

Navigation Link

Nút chức năng cho phép người dùng điều hướng đến trang Reset Password.

6 Login By Social Media True Button Nút chức năng cho phép người dùng đăng nhập thông qua các tài khoản mạng xã hội.

6.6.14.SC14.Register Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Login

Link True

Navigation Link

Nút chức năng cho phép người dùng điều hướng đến Login Screen.

2 Email

Field True Text Field

Field điền email người dùng muốn đăng kí

3 Password

Field True Text Filed

Field điền mật khẩu cho email

4

Repeat Password Field

True Text Field Field lặp lại mật khẩu vừa điền

5 Register

Button True Button

Nút chức năng cho phép người dùng thực hiện chức năng đăng kí. Nếu thành công, ứng dụng sẽ tự động điều hướng về Home Screen bằng tài khoản vừa đăng kí.

6.6.15.SC15.Template List Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Template

List True List

Data từ Api Server

Hiển thị danh sách template hiện có trong ứng dụng

2 Template

Name True Text

Data từ Api Server

Tên của template

3 Template

Description True Text

Data từ Api Server

Mô tả template

4 Template

Image True Image

Data từ Api Server

Ảnh đại diện cho template

6.6.16.SC16.Remove Template Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Remove

Button True Button

Nút chức năng cho phép người dùng xoá template được chọn

6.6.17.SC17.Add Template Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Name

Field True

Text Filed

Field để người dùng điền tên template muốn thêm vào

2 DriveID

Field True

Text Filed

Field để người dùng điền Drive ID

3 Description

Field True

Text Filed

Field để người dùng điền mô tả cho template

4

Select Photo Button

True Button Nút chức năng cho phép người dùng chọn ảnh cho template

5 Add

Button True Button

Nút chức năng cho phép người dùng thêm template sau khi điền đầy đủ thông tin

6.6.18.SC18.Template Photo Added Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Template

Image True Image

Ảnh vừa được người dùng thêm vào từ thiết bị

6.6.19.SC19.Propose Template Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Template Name Filed True Text Filed

Field để người dùng nhập tên Template muốn đề xuất

2 Description

Field True

Text Filed

Filed để người dùng nhập mô tả cho template

3

Select Photo Button

True Button Nút chức năng cho phép người dùng chọn ảnh cho template

4 Submit

Button True Button

Nút chức năng hoàn tất việc đề xuất template sau khi điền đầy đủ thông tin.

6.6.20.SC20.Object Photo Added Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Template

Image True Image

Data từ API

Phần hiển thị ảnh đã được người dùng thêm vào dùng cho

template muốn đề xuất.

6.6.21.SC21.Count History Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Count History List True List Data từ Api Server

Hiển thị danh sách lịch sử đếm vật thể trên ứng dụng

2 Result True Text

Data từ Api Server

Phần hiển thị kết quả và thời gian của kết quả đó

3 Rating True Rating View

Data từ Api Server

Phần đánh giá kết quả của người dùng

4 Result

Image True Image

Data từ Api Server Hình ảnh của kết qủa đếm vật thể, người dùng có thể nhấn vào ảnh để phóng to.

Bảng 6.22 Chi tiết Count History Screen 6.6.22.SC22.Remove History Screen

Chương 6: ỨNG DỤNG iOS

No Name

Required (Input… Validation)

Type Reference Note

1 Remove

Button True Button

Nút cho phép người dùng xoá kết quả ra khỏi lịch sử đếm.

Bảng 6.23 Chi tiết Remove History Screen 6.7. Đặc tả cơ sở dữ liệu

Hình. Cơ sở dữ liệu của ứng dụng

Cơ cở dữ liệu của ứng dụng được lưu ở Firebase, bao gồm 2 bảng chính:

- Bảng Template: Lưu trữ danh sách các template hiện có trong ứng dụng gồm những thuộc tính như:

o TemplateID: Mã của template, ngoài ra còn là khoá chính để phân biệt những template khác nhau.

o DriveID: Đường dẫn đến địa chỉ chứa file .h5 được lưu trên Google Drive (dùng cho việc dự đoán & đếm vật thể). o CreateDate: Thời gian template được thêm vào ứng dụng. o ImageURL: Đường dẫn đến ảnh đại diện của template. o Name: Tên của template.

o Description: Mô tả của template.

o IsCircle: Thuộc tính dạng true/false, phân biệt hình dạng của vật thể (hình tròn/hình chữ nhật).

- Bảng History: Lưu trữ lịch sử đếm của người dùng sau khi đếm thành công bao gồm những thuộc tính sau:

o Name: Tên của template đã đếm.

o Count: Kết quả số lượng object đã đếm được trên hình ảnh. o Rate: Đánh giá của người dùng (1-5 sao) cho lần đếm tương ứng.

o ImageURL: Đường dẫn đến hình ảnh được người dùng sử dụng để đếm

Một phần của tài liệu Xây dựng ứng dụng iOS đếm vật thể mật độ cao trong hình ảnh dựa vào học máy và xử lý ảnh đồ án tốt nghiệp khoa đào tạo chất lượng cao ngành công nghệ thông tin (Trang 100)

Tải bản đầy đủ (PDF)

(185 trang)