Ý tưởng app đếm sắt trên xe khi sắt cây về công trường cho kỹ sư đỡ cực

nguyentheanh

Tác giả Dự toán GXD
Thành viên BQT
Tham gia
6/7/07
Bài viết
4.004
Điểm tích cực
6.324
Điểm thành tích
113
Ý tưởng app đếm sắt trên xe khi sắt cây về công trường cho kỹ sư đỡ cực

Hôm qua (21/05/2020) em ra công trường thương mấy anh/em kỹ sư quá. Nắng vỡ đầu đếm d32 đỡ nhục đếm thép d10 nhục luôn!

Mục đích: thấy anh/em đếm sắt trên xe khi sắt cây về công trường cực quá! làm app đếm thép giúp anh em đỡ cực.
Đọc trên mạng có bài viết về đếm phần tử trên một bức ảnh. Nếu làm cái app trên điện thoại, chụp đuôi xe phát là ra số thanh thì quá tốt cho anh/em kỹ sư và bên bán vật liệu thép (y).

Cách xử lý ảnh và đếm số lượng với MATLAB

Matlab là viết tắt của “MATrix LABoratory”, là một bộ phần mềm toán học và cũng là ngôn ngữ lập trình thế hệ thứ 4 của Mathworks. Matlab giải quyết các vấn đề về mặt kỹ thuật kỹ thuật, lập trình, tính toán số nhanh hơn nhiều so với các ngôn ngữ lập trình truyền thống, như C, C ++ và Fortran. Bài viết này hướng dẫn bạn cách xử lý ảnh và đếm số lượng với Matlab.

Vector trong MATLAB
Cách thêm ký hiệu toán học trong MATLAB
MATLAB là gì, hướng dẫn đầy đủ về MATLAB
Cách cài đặt MATLAB trên Mac OS X
Các kiểu số học trong MATLAB





Việc xử lý ảnh và đếm số lượng với MATLAB được thực hiện bằng cách thực thi các lệnh dưới đây trong cửa sổ lệnh của MATLAB.

CÁCH XỬ LÝ ẢNH VÀ ĐẾM SỐ LƯỢNG VỚI MATLAB

Nếu máy tính của bạn chưa có Matlab, hãy tải về và cài đặt Matlab phiên bản mới nhất tại đây : Download Matlab

Bước 1: Đọc ảnh

doc-anh-xu-ly-anh-va-dem-so-luong-voi-matlab.jpg

Một hình ảnh sẽ tương phản đáng kể với nền background của nó để xác định các đối tượng. Hàm imread đọc ảnh từ một vị trí nhất định và lưu ảnh trong ma trận img1. Hàm imshow sẽ hiển thị ảnh.

img1=imread('Lines.jpg');

imshow(img1)

Bước 2: Chuyển đổi màu ảnh sang màu xám

chuyen-doi-mau-sang-anh-xam-cach-xu-ly-anh-va-dem-so-luong-voi-matlab.jpg

Bước này sẽ xóa các màu sắc trong ảnh đi và để xác định các đối tượng dễ dàng hơn. Hàm rgb2gray chuyển đổi màu sắc trong ảnh sang màu xám và lưu trữ trong ma trận img2.

img1=rgb2gray(img1);

imshow(img1)

Bước 3: Ngưỡng Hình Ảnh

nguong-hinh-anh-cach-xu-ly-anh-va-dem-so-luong-voi-matlab.jpg

Ngưỡng hình ảnh bằng cách chuyển đổi ảnh màu xám sang ảnh chỉ chứa 2 màu. Hàm im2bw() gán màu đen cho tất cả điểm ảnh có độ sáng cao hơn mức ngưỡng, và còn lại là màu trắng. Hàm graythresh () tính toán khoảng ngưỡng của hình ảnh.

img2=im2bw(img1,graythresh(img1));

imshow(img2)

Bước 4: Phần bổ sung Hình ảnh

bo-sung-hinh-anh-cach-xu-ly-anh-va-dem-so-luong-voi-matlab.jpg

Sử dụng toán tử ~ để bổ sung cho hình ảnh. Bằng cách này để chuyển đổi các mảng trắng thành màu đen và ngược lại. Nếu muốn làm nổi bật đối tượng bằng màu trắng, bạn có thể thực hiện bước này.

img2=~img2;

imshow(img2)

Bước 5: Tìm ranh giới của các đối tượng

tim-ranh-gioi-giua-cac-doi-tuong-cach-xu-ly-anh-va-dem-so-luong-voi-matlab.jpg

Bước này để tìm ranh giới của mỗi đối tượng mà Matlab tìm thấy và lưu trữ trong B. Hàm text sẽ in số lượng các đối tượng mà hàm bwboundaries tìm thấy.

B = bwboundaries(img2);

imshow(img2)

text(10,10,strcat('\color{green}Objects Found:',num2str(length(B))))

hold on

Bước 6: Vẽ đường ranh giới

ve-duong-ranh-gioi-cach-xu-ly-anh-va-dem-so-luong-voi-matlab.jpg

Bước xử lý ảnh và đếm số lượng với MATLAB này khá thú vị, trong đó bạn có thể đánh dấu ranh giới các đối tượng được xác định bởi hàm bwboundaries. Nếu cảm thấy phức tạp quá, bạn có thể bỏ qua bước này:

for k = 1:length(B)

boundary = B{k};

plot(boundary:),2), boundary:),1), 'g', 'LineWidth', 0.2)

end

Bước 7: Viết mã Code

img1=imread('Lines.jpg');

imshow(img1)

img1=rgb2gray(img1);

imshow(img1)

img2=im2bw(img1,graythresh(img1));

imshow(img2)

img2=~img2;

imshow(img2)

B = bwboundaries(img2);

imshow(img2)

text(10,10,strcat('\color{green}Objects Found:',num2str(length(B))))

hold on

for k = 1:length(B)

boundary = B{k};

plot(boundary:),2), boundary:),1), 'g', 'LineWidth', 0.2)

end

Bài viết tham khảo từ trang taimienphi.vn, đây là ý tưởng hay của 1 kỹ sư xây dựng, nhu cầu khó khăn từ thực tế là có thật, công trình nào cũng sử dụng thép, người kinh doanh, bốc vác thép cũng nhiều.
Các bạn có thể nghiên cứu đề tài khoa học, đồ án tốt nghiệp hoặc luận văn thạc sĩ... cũng không hẳn cứ phải là Matlab, nhưng hướng đi và giải pháp nói trên cũng giúp bạn đọc quan tâm tham khảo rất tốt.
 

Tải bộ cài phần mềm Dự toán GXD, Đấu thầu GXD, Thanh Quyết toán GXD, Quản lý chất lượng GXD. Dành cho người mua bản quyền
Kích để xem khóa học Dự toán công trình
Kích để xem khóa học Dự toán công trình
Nắp ga, song chắn rác Gang, Composite
Phần mềm quản lý chất lượng công trình QLCL GXD
Tìm hiểu khóa học Thanh Quyết toán GXD

Các bài viết mới

Top