QR Code Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tag/qr-code Cao Đẳng FPT M?ng c c??c bng ? tuyển sinh theo hình thức xét tuyển h?sơ. Tiêu chí đào tạo: Thực học ?Thực nghiệp! Sat, 19 Aug 2023 04:16:08 +0000 vi hourly 1 //wordpress.org/?v=6.4.1 //westview-heights.com/wp-content/uploads/cropped-logo-fpt-32x32.png QR Code Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tag/qr-code 32 32 QR Code Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tin-tuc-poly/tp-ho-chi-minh-tin-sinh-vien/doc-la-ma-qr-clb-noi-ngoai-that-tai-fpt-polytechnic-tp-hcm-duoc-tao-boi-ai.html Tue, 15 Aug 2023 02:15:55 +0000 //westview-heights.com/?p=249647 Bạn đã quá quen thuộc với các mã QR đen trắng thông thường và đang tìm kiếm gì đó mới m? Hãy đến với CLB Nội ngoại thất FPL TP HCM đ?sáng tạo nên mã QR kiến trúc độc ...

The post Độc l?mã QR CLB Nội – Ngoại thất tại FPT M?ng c c??c bng ? TP HCM được tạo bởi AI appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
Bạn đã quá quen thuộc với các mã QR đen trắng thông thường và đang tìm kiếm gì đó mới m? Hãy đến với CLB Nội ngoại thất FPL TP HCM đ?sáng tạo nên mã QR kiến trúc độc đáo dành riêng cho bản thân nhé!

Với mong muốn cập nhật các xu th?phát triển của Thiết k?Đ?họa, Polyinex – CLB Nội Ngoại thất FPT M?ng c c??c bng ? TP HCM luôn c?gắng giúp các bạn sinh viên đang theo học tại trường có được các trải nghiệm mới m?trong chuyên ngành, góp phần tăng s?hứng thú của của các bạn với chương trình học.

Đ?tạo ra những mã QR vô cùng sống động và mang hình dáng độc đáo của các tòa nhà kiến trúc, tại Polyinex, các bạn sinh viên s?được dẫn vào hành trình khám phá sáng tạo thông qua s?giúp đ?của công ngh?AI. Với s?h?tr?của trí tu?nhân tạo, các bạn có th?tạo ra một giao diện QR code hoàn toàn mới, nâng cao trải nghiệm của mã QR và mang đến s?đổi mới trong việc nhận diện thương hiệu.

Hãy tạm gác lại cách tạo mã QR truyền thống và th?thách bản thân với kh?năng sáng tạo vô tận. Hãy th?ứng dụng các phương pháp AI đ?tạo ra những mã QR độc đáo và thú v? th?hiện s?khác biệt và độc đáo của mỗi tòa nhà kiến trúc. Đây chính là cơ hội đ?các bạn tạo nên s?đổi mới trong việc nhận diện thương hiệu của mình, đồng thời tìm hiểu v?s?kết hợp đầy hứa hẹn giữa sáng tạo và công ngh?AI trong lĩnh vực thiết k?nội ngoại thất.

Một s?sản phẩm của thành viên thuộc CLB:

Hãy đến và tham gia CLB Polyinex đ?cùng thực hiện những giấc mơ tưởng chừng không th?tr?thành hiện thực, trong đó có trải nghiệm s?kết hợp tuyệt vời giữa công ngh?AI và th?giới mã QR!

  • Fanpage Polyinex
  • Diễn đàn CLB Polyinex
  • Website Polyinex.com
  • Youtube Polyinex
  • Quét mã QR dưới đây đ?theo dõi các chuyên đ?tại xưởng thực hành Nội Ngoại thất b?môn Thiết k?Đ?họa – Trường Cao đẳng FPT M?ng c c??c bng ? cơ s?TP HCM nhé!

Giảng viên: ThS. Bùi Vũ Huỳnh Sang
B?môn Thiết k?đ?họa
Trường Cao đẳng FPT M?ng c c??c bng ? cơ s?TP HCM

The post Độc l?mã QR CLB Nội – Ngoại thất tại FPT M?ng c c??c bng ? TP HCM được tạo bởi AI appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
QR Code Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/doc-chuoi-ky-tu-tu-ma-qr-code.html //westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/doc-chuoi-ky-tu-tu-ma-qr-code.html#respond Mon, 13 Feb 2023 06:26:35 +0000 //westview-heights.com/?p=208091 Cùng học cách quét mã QR Code lưu một chuỗi ký t?bằng Webcam của laptop, s?dụng thư viện Google Zxing library và thư viện chụp ảnh màn hình Webcam Capture hiển th?trong Java Swing trong bài viết ...

The post Đọc chuỗi ký t?t?mã QR Code appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
Cùng học cách quét mã QR Code lưu một chuỗi ký t?bằng Webcam của laptop, s?dụng thư viện Google Zxing library và thư viện chụp ảnh màn hình Webcam Capture hiển th?trong Java Swing trong bài viết dưới đây!

QR Code (Quick Response Cod) – được gọi là mã vạch ma trận (matrix-barcode) 2 chiều được quét bằng smartphone hoặc những thiết b?chuyên dụng. Mã QR Code s?dụng đ?mã hóa các loại d?liệu khác nhau. Trong thực tiễn, ứng dụng của QR Code có th?k?đến như:

  • Lưu tr?thông tin URL
  • Lưu tr?mã vận đơn, thông tin hàng hóa đ?kiểm kê
  • Thông tin card visit
  • Code vé ?các trạm xe khách, tàu
  • Truyền thông quảng cáo

Vậy với một developer , thì việc quét mã QR s?diễn ra như th?nào? Hãy tìm hiểu k?hơn ?phần thông tin dưới đây!

  1. Thêm thư viện vào Project

Đ?thực hiện việc quét mã QRCode chúng ta cần 2 thư viện là Google Zxing và Webcam Capture. Trong bài viết s?hướng dẫn các bạn thêm thư viện vào Project Maven có cấu trúc như sau:

Sau khi đã tạo được Project ta s?thêm thư viện Google Zxing trước. Các bạn chọn một phiên bản mới nhất hoặc có nhiều người s?dụng nhất.  Tại đây.  (Bài viết đang lựa chọn phiên bản 3.5.0.)

Sau khi chọn được phiên bản, các bạn click vào phiên bản đó và copy toàn b?trong phần Maven như sau:

Sau đó các bạn m?file pom.xml trong Project vừa tạo. Thêm một th?** và dán toàn b?phần vừa copy ?trên vào trong th?

Các bạn tiếp tục làm tương t?và thêm thư viện Webcam Capture Tại đây và thư viện ZXing Java SE Extensions Tại đây vào file pom.xml. Sau khi thêm thành công File pom.xml của các bạn s?có dạng như sau:

  1. Quét mã QR trong Java Swing.

Trong Project ta vừa tạo, tác gi?đã tạo một jFrame có gồm 3 thành phần với tên biến như sau:

  • jPanel – showPanel : Hiển th?Webcam
  • jLabel : Tiêu đ?cho kết qu?/li>
  • jTextField – txtResult : Hiển th?kết qu?đọc được.

Khi chương trình chạy thành công, các bạn có th?chỉnh kích thước sao cho phù hợp với diện tích hiển th? Thành phần showPanel các bạn click phải chọn Set layout và chọn Absolute Layout.

Gi?chúng ta hãy bắt đầu vào tiến hành code. ?đây, tác gi?s?dụng trực tiếp trên jFrame nên các thành phần thuộc tính của jFrame s?được đ?toàn b?là private.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

import com.github.sarxos.webcam.Webcam;

import com.github.sarxos.webcam.WebcamPanel;

import com.github.sarxos.webcam.WebcamResolution;

import com.google.zxing.BinaryBitmap;

import com.google.zxing.LuminanceSource;

import com.google.zxing.MultiFormatReader;

import com.google.zxing.NotFoundException;

import com.google.zxing.Result;

import java.awt.Dimension;

import java.awt.image.BufferedImage;

import java.util.logging.Level;

import java.util.logging.Logger;

import com.google.zxing.client.j2se.BufferedImageLuminanceSource;

import com.google.zxing.common.HybridBinarizer;

 

public class ScanQr extends javax.swing.JFrame {

 

//Khai báo 1 đối tượng Webcam

private Webcam webcam;

//Khai báo 1 đối tượng Panel đ?chứa đối tượng webcam

private WebcamPanel webcamPanel;

//Tạo ra một Thread chạy song song với Thread chính

//đ?có th?chụp ảnh liên tiếp mà k ảnh hưởng đến thread chính

private Thread captureThread;

 

public ScanQr() {

     initComponents();

     //gọi hàm khởi tạo Webcam và hàm tạo thread ngay

     //khi jFrame được khởi tạo

     initWebcam();

     captureThread();

}

 

//Tạo ra một hàm đ?khởi tạo và hiển th?Webcam

private void initWebcam() {

     //khởi tạo thuộc tính webcam của jFrame

     //qua hàm getWebcam của lớp Webcam

     webcam = Webcam.getWebcams().get(0);

 

     //Tạo một đối tượng Dimension đ?lấy kích thước

     //của đ?phân giải VGA qua hàm getSize() của lớp

     //WebcamResolution.

     Dimension size = WebcamResolution.VGA.getSize();

     //Set kích thước hiển th?của webcam theo đối tượng

     //Dimension vừa tạo

     webcam.setViewSize(size);

 

     //Khởi tạo thuộc tính webcamPanel với tham s?/span>

     //là thuộc tính webcam

     webcamPanel = new WebcamPanel(webcam);

     //Set kích thước của panel bằng với kích thước

     //hiển th?của webcam

     webcamPanel.setPreferredSize(size);

     //Set thuộc tính FPSDisplayed của panel thành true

     //đ?hiển th?s?khung hình lên

     webcamPanel.setFPSDisplayed(true);

 

     //Thêm webcamPanel vào showPanel mà chúng ta đã tạo

     //lúc đầu và set v?tr?của webcamPanel thông qua

     //hàm khởi tạo của Absolute Layout

     showPanel.add(webcamPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 680, 480));

 

}

 

//Tạo một hàm chụp ảnh và giải mã QRCode trong ảnh

//và s?được chạy trong Thread ta đã khai báo lúc đầu

public void captureThread() {

     captureThread = new Thread() {

         //Ghi đ?phương thức run đ?thực hiện code

         @Override

         public void run() {

             //tạo một vòng while đ?Thread thực hiện

             //chụp ảnh liên tục

             do {

                 try {

                     //S?dụng phương thức sleep() của Thread

                     //đ?sau mỗi 100mili giây mới tiến hành chụp

                    Thread.sleep(100);

                 } catch (InterruptedException ex) {

                     ex.printStackTrace();

                 }

                   

                 //Khai báo một đối tượng Result thuộc thư viện Zxing

                //đ?lưu kết qu?giải mã

                 Result result = null;

                   

                 //Tạo một đối tượng ảnh đ?lưu ảnh chụp được

                 BufferedImage image = null;

                   

                 //Kiểm tra xem webcam đã m?hay chưa

                 if (webcam.open()) {

                     //Nếu webcam không tr?v?ảnh được ảnh chụp thì

                     //lặp lại vòng lặp ngay lập tức

                     if ((image = webcam.getImage()) == null) {

                         continue;

                     }

                 }

                   

                 //Tạo một đối tượng đ?giải mã ảnh vừa chụp được

                 //ra dạng Bitmap

                 LuminanceSource source = new BufferedImageLuminanceSource(image);

                   

                 //Tạo một đối tượng Bitmap đ?lưu bitmap vừa được giải mã

                 BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));

                 

                 try {

                     //Giải mã bitmap thông qua đối tượng MultiFormatReader

                     //với phương thức decode() và lưu vào biến result

                     result = new MultiFormatReader().decode(bitmap);

                 } catch (NotFoundException ex) {

                    ex.printStackTrace();

                 }

                 //Kiểm tra nếu giải mã thành công và gán giá tr?/span>

                 //cho biến result thì in kết qu?đó lên TextField

                 if (result != null) {

                     txtResult.setText(result.getText());

                 }                  

             } while (true); //Vòng lặp vô hạn                            

         }

     };

     //Set thread này là một Daemon thread và chạy thread

     captureThread.setDaemon(true);

     captureThread.start();

}                      

 

//Phần hàm Main của jFrame

public static void main(String args[]) {

     /* Set the Nimbus look and feel */

     //<editor-fold defaultstate=”collapsed” desc=” Look and feel setting code (optional) “>

     /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

      * For details see //download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

      */

     try {

         for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {

             if (“Nimbus”.equals(info.getName())) {

                 javax.swing.UIManager.setLookAndFeel(info.getClassName());

                 break;

             }

         }

     } catch (ClassNotFoundException ex) {

         java.util.logging.Logger.getLogger(ScanQr.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

     } catch (InstantiationException ex) {

         java.util.logging.Logger.getLogger(ScanQr.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

     } catch (IllegalAccessException ex) {

         java.util.logging.Logger.getLogger(ScanQr.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

     } catch (javax.swing.UnsupportedLookAndFeelException ex) {

         java.util.logging.Logger.getLogger(ScanQr.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

     }

     java.awt.EventQueue.invokeLater(new Runnable() {

         public void run() {

             new ScanQr().setVisible(true);

         }

     });

}               

private javax.swing.JLabel jLabel1;

private javax.swing.JScrollPane jScrollPane1;

private javax.swing.JPanel showPanel;

private javax.swing.JTextArea txtResult;                

}

Sau khi hoàn thành, các bạn chạy file và tận hưởng thành qu?Webcam hiển th?trên màn hình jFrame. Các bạn có th?t?tạo một mã QR lưu chuỗi ký t?bất k?Tại đây. Sau đó lưu hình ảnh v?điện thoại và quay v?phía Webcam đ?phần đọc. Nếu thành công màn hình s?hiển th?kết qu?như sau:

Trên đây là bài viết hướng dẫn các bạn cách đ?quét và giải mã một QRCode thông qua Webcam laptop, s?dụng thư viện Google Zxing và thư viện Webcam Capture. Chúc các bạn thành công!

B?môn Ứng dụng phần mềm
Cao đẳng FPT M?ng c c??c bng ? Hà Nội

The post Đọc chuỗi ký t?t?mã QR Code appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
//westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/doc-chuoi-ky-tu-tu-ma-qr-code.html/feed 0