Các chức năng chính

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 95)

4.1.10 .Dataset bàn phím

6.4. Các chức năng chính

6.4.1. Lựa chọn template cần đếm:

Với chức năng lựa chọn template cần đếm, người dùng sẽ thực hiện chức năng này ở Home Screen. Danh sách template được biểu diễn dưới dạng List, 1 item Template sẽ bao gồm Template Image và Template Description cung cấp đầy đủ thông tin cho người dùng sử dụng. Nếu template người dùng muốn sử dụng khơng có ở Template List, người dùng có thể click chọn Propose Template Button để chuyển hướng đến Propose Template Screen để đề xuất template mong muốn.

Hình 6.3 Các thành phần chính của Home Screen 6.4.2. Lựa chọn hình ảnh và đếm: 6.4.2. Lựa chọn hình ảnh và đếm:

Về việc lựa chọn hình ảnh để đếm, người dùng có 2 lựa chọn: chọn ảnh từ thư viện (Select from Library) và dùng ảnh chụp từ camera (Take photo). Khi ấn vào bất kì template nào ở Home Screen, người dùng sẽ được chuyển đến Count Screen, Template Information sẽ hiển thị thông tin về template mà người dùng vừa chọn, ấn vào Select Photo Button để bắt đầu thực hiện chọn ảnh để đếm.

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

Hình 6.4 Các thành phần chính của Count Screen

Hình 6.5 Count Screen sau khi người dùng ấn Select Button

Sau khi thực hiện việc chọn ảnh thành công, ứng dụng sẽ chuyển đến Selected Photo Screen là một màn hình interactive của Count Screen. Ở màn hình này, ứng dụng sẽ cho phép người dùng tuỳ chọn độ chính xác của kết quả phù hợp thơng qua Score Slider (có giá trị từ 0-1 ứng với 0%-100%, 0.95 (95%)) là giá trị Score mặc định), ngồi ra cịn có Confident Checker cho phép người dùng lựa chọn việc confident có hiển thị trên ảnh kết quả hay không. Để tiến hành chức năng đếm trên ảnh vừa được chọn, người dùng click chọn Count Button.

Hình 6.6 Các thành phần của Selected Photo Screen

Sau khi thực hiện chức năng Đếm thành công, hệ thống sẽ trả về kết quả cho người dùng trong vòng 10 giây (thời gian đếm). Result Image sẽ biểu diễn kết quả dưới dạng hình ảnh, bounding box sẽ khoanh lại những vật thể mà thuật toán có thể phát hiện được, bên dưới hình ảnh sẽ là kết quả được biểu diễn dưới dạng Text bao gồm tổng số vật thể đếm được (Number of Object), thời gian thực thi (Counting Time) và đánh giá của người dùng (Rating).

Hình 6.7 Các thành phần của Count Result Screen 6.4.3. Lưu và hiển thị lịch sử: 6.4.3. Lưu và hiển thị lịch sử:

Sau khi thực hiện chức năng đếm, bên dưới Result Image sẽ có Save button cho phép người dùng thực hiện chức năng lưu kết quả. Các kết quả đếm sẽ được hiển thị ở Count History Screen dưới dạng List.

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

Hình 6.8 Các thành phần chính của History Screen 6.4.4. Đề xuất template mới: 6.4.4. Đề xuất template mới:

Việc người dùng muốn sử dụng ứng dụng để đếm vật thể nhưng lại khơng có sẵn template cho người dùng là một bất lợi trong quá trình sử dụng của họ, tuy nhiên, với mức độ bao quát cũng như mất nhiều thời gian để thu thập dữ liệu và hạn chế về nhân công, kĩ thuật. Nhóm đã đưa ra giải pháp ở mức chấp nhận được cho vấn đề này là cho phép người dùng có thể tự đề xuất template mà họ mong muốn, cho mỗi template mà người dùng mong muốn thêm phải đề xuất ít nhất 5 hình ảnh về template đó và mơ tả chi tiết để nhóm có thể phát triển thực tế trên ứng dụng. Người dùng có thể di chuyển đến Propose Template Screen thơng qua Tab Menu hoặc Propose Button ở Home Screen để thực hiện chức năng này.

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 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. 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 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

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 95)

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

(185 trang)