Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Trang 2 của 4 Đầu tiênĐầu tiên 1234 CuốiCuối
Kết quả 11 đến 20 của 36
  1. #11
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Quăng cả cái link kia lên thì hết đỡ nổi rồi.

  2. #12
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Mình cũng đang làm đề tài về chủ đề nào, Bạn nào có tài liệu hay source nào thì share mình với nha. Cảm ơn mọi người trước.

  3. #13
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    cái này trước đây mình có làm rồi, đề tìm lại code gửi cho các bạn tham khảo nha

  4. #14
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Chào các bạn. Mình có nghiên cứu tìm hiểu khá nhiều về các thuật toán giấu tin trong anh. Hiện mình có source của một số thuật toán như sau
    1. LSB phưong pháp giấu tin dựa vào bit có trọng số thấp
    2. CPT giấu tin vào một khối nhị phân
    3. CPT cải tiến (Đây là thuật toán do các thầy trong trường HVKTQS nghiên cứu và phát triển)
    Bạn nào có nhu cầu thì liên hệ với mình qua mail hoanghieut2@gmail.com. Mình sẽ gửi cho ít tài liệu liên quan
    PS: Mình còn một số đề tài liên quan đến xử lý anh
    Nhận dang chữ số từ ảnh scan
    bạn nào quan tâm các vấn đề này thì mail cho minh nhé

  5. #15
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Mình có mail cho bạn rồi đó.Mong nhận được sự giúp đỡ của bạn.Cảm ơn nhiều !!!

  6. #16
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Bạn cho mình hỏi cái phần mềm này phát triển trên cái gì ấy nhỉ? Mình dùng VC 2010 mà không mở được. Giúp mình nhé.

  7. #17
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi G.Perelman
    Quăng cả cái link kia lên thì hết đỡ nổi rồi.
    Anh giải thích giúp em đoạn code kiểm tra ảnh đầu vào với định dạng ảnh bitmap 24 bit màu này với. Mới tìm hiểu nên đọc code của anh em chưa hiểu rõ lắm ở chỗ cái offset 28, 29 kia là vị trí có vai trò như nào trên ảnh bitmap vậy ạ?

    Mã:
    //kiểm tra anh đầu vào là loại ảnh nào
    FileStream inputFile = new FileStream(inputPath1, FileMode.Open, FileAccess.Read);
    int offset = 28; //dia chi lech
    inputFile.Seek(offset, 0); //chuyen con tro den vi tri byte 28
    byte[] temp = new byte [2];
    inputFile.Read(temp, 0, 2); / doc vao 2 byte o vi tri 28 va 29
    Int16 numOfBit = BitConverter.ToInt16(temp, 0);  //chuyen mang byte temp[] ve so nguyen bit
    inputFile.Close)(;

  8. #18
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    cho e hỏi cả nhà có ai có đề tài giấu tin trong hinh ảnh làm bằng java hok ah? post lên cho e tham khảo với.mong cả nhà chỉ giáo cho e..thanks.

  9. #19
    Chào các bạn
    Sau khi nhận được khá nhiều mail của các bạn hỏi về thuật toán giấu tin trong ảnh. Hôm nay mình quyết định viết một bài hướng đẫn các bạn một cách chi tiết nhất về thuật toán này.
    Để giấu tin trong ảnh thì theo mình biết đã có 2 thuật toán khá nổi tiếng là
    1. ( Least Significant Bit).
    - Nghĩa là giấu tin vào bit thấp. Mình nói sơ sơ qua về thuật toán này nhé. Các bạn xem ví dụ sau là hiểu

    - Thuật toán này là sẽ thay thế các bit cuối cùng của dữ liệu gốc lần lượt bằng các bit của thông điệp cần giấu.
    - Ưu điểm của thằng này là thuật toán đơn giản, dễ cài đặt.
    - Nhược điểm: Do giấu tin vào bit thấp nên dễ bị tấn công bằng các phương pháp biến đổi ảnh cơ bản.
    2. Thuật toán thứ 2 đã khá nổi tiếng trên thế giới. Thuật toán CPT (Chúa pó tay [IMG]images/smilies/biggrin.png[/IMG])
    - Tư tưởng của thuật toán này như sau: chia ảnh đầu vào thành các khối ảnh có kích thước m*n
    - Với mỗi khối dữ liệu ảnh có thể giấu được tối đa r bit thông tin, với r ≤ log2(mn+1)] bằng cách thay đổi không quá 2 bit trong khối dữ liệu ảnh. Thuật toán này cần mặt nạ - khóa K có kích thước bằng khối ảnh và gồm các bit 0 hoặc 1 và ma trận trọng số W cũng có kích thước bằng khối ảnh sao cho các phần tử có giá trị phủ kín tập 2R =[1,...,2r-1] và cũng chỉ thuộc tập 2R. Giả sử giá trị cần giấu là b ∈ [0,..., 2r-1] và kí hiệu khối ảnh sẽ mang tin giấu là F, thuật toán giấu b vào F gồm 4 bước:
    B1: Tính

    B2: Tính

    B3:

    B4:

    - Đảo bit trong khối F để được F’ sao cho tổng s tính trong B2 tăng d đơn vị.
    - Đến đây là đã giấu giá trị b vào khối ảnh F rồi. Vấn đề là giải tin thế nào.
    - Sau khi đảo bit khối F đã trở thành khối F’.
    - Tính tổng S’ của khối F’. giá trị b=s+d
    • Đó là tư tưởng của thuật toán CPT. Tất nhiên để từ thuật toán này cài đặt thành một chương trình là cả một vấn đề phía trước. Cái mình muốn giới thiệu với các bạn đó là một thuật toán mới, được cải tiến từ thuật toán gốc CPT
    3. Thuật toán giấu giá trị d vào khối ảnh I
    - Chi tiết phần lý thuyết mình sẽ không trình bày ở đây các bạn có thể xem trong tài liệu. Trong tài liệu đã có ví dụ minh họa cụ thể. Mình chỉ giới thiệu từng bước để xây dựng được thuật toán.
    - B1: Phân hoạch ảnh đầu vào thành các khổi có kích thước m*n (Lấy luôn là 16*16)
    o Vì sao lại có con số 16*16 ?. như ta biết thì các ký tự trong bảng mã ASCII có giá trị từ 0255. Để giấu một ký tự bất kỳ ví dụ ký tự A có mã là 65 thì cần 1 mảng có độ lớn m*n > 65. Nếu chọn mảng có kích thước 16*16 là đảm bảo giấu dc bất kỳ ký tự nào
    - B2: Tìm các tập Omega 1 và 2



    - Rồi. vậy vấn đề cơ bản về lý thuyết mình đã giới thiệu qua. Các bạn muốn hiểu bản chất thì phải xem kỹ tài liệu mình gửi. Nếu chưa hiểu chỗ nào thì có thể liên hệ với mình. Mình sẽ giải đáp. Bây giờ hãy bắt tay vào code những dòng đầu tiên thôi.

    4. Đọc dữ liệu ảnh bằng c#
    - Phần đầu tiên mình sẽ giới thiệu cách đọc dữ liệu ảnh. Phân tích cấu trúc một file ảnh 24bit
    - 1 pixel ảnh mầu sẽ có 3 giá trị là Red, Green, Blue
    - Ví dụ 1 pixel ảnh sau khi đọc ra có giá trị [234][235][239]. Lần lượt các giá trị tương ứng của nó là R,G,B
    - Để giấu tin thì mình cần chọn giấu vào mầu nào.
    - Sau khi đọc ảnh đầu vào mình sẽ có 1 mảng 2 chiều gồm các số từ 0255.
    - Xác định mảng dữ liệu của mầu cần giấu (vì có 3 mầu là R,G,B)
    - Tách lấy mặt phẳng bit thứ k với k trong khoảng [0…7]
    o Nói thêm một chút về khái niệm mặt phẳng bit;
    o Khi nhị phân 1 số tự nhiên sẽ được chuỗi 8 bit. Mặt phẳng bit thứ k nghĩa là lấy giá trị của bit thứ k
    Đây là link down phần tài liệu và source phần đọc dữ liệu ảnh và tách mặt phẳng bit.
    Bài sau mình sẽ hướng dẫn các bạn cách tính tổng S, và tìm các cặp Omega
    http://www.4shared.com/get/QRzL4EJo/Lythuyet.html
    http://www.4shared.com/rar/_50TBHv3/ReadImageData.html?

    Mình ko biết cách đính kèm ảnh nên gửi file doc những phần đã viết phía trên
    http://www.4shared.com/file/10N7ERiy/help.html?

  10. #20
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    - Bài trước mình đã hướng dẫn các bạn:
    • Cách đọc dữ liệu từ 1 file ảnh.
    • Tách lấy dữ liệu của một mầu.
    • Tách mặt phẳng bit
    • Lúc này dữ liệu đầu vào mình đã có là 2 ma trận 2 chiều. Ma trận thứ nhất là ma trận dữ liệu gốc. Ma trận thứ 2 là ma trận mặt phẳng bit thứ k.
    - Hôm nay mình sẽ hướng dẫn các bạn từ dữ liệu đầu vào là 2 ma trận thu được. Sẽ tiến hành giấu giá trị d vào ma trận vừa thu được
    - Mình sẽ bám theo dữ liệu trong phần lý thuyết.
    Ví dụ khối ảnh sau khi đọc có dữ liệu là:
    175 189 172 172 172
    172 188 188 175 188
    176 172 168 172 s
    - Giả sử cần giấu giá trị d=3 vào khối ảnh trên
    - Sau khi tách mặt phẳng bit với k=4 thu được khối nhị phần F
    0 1 0 0 0
    0 1 1 0 1
    1 0 0 0 1

    - Nhiệm vụ của chúng ta bây giờ là xây dựng thuật toán để tìm các cặp Omega như trong phần lý thuyết đã mô tả
    - Trong bài này mình đã code 1 project làm theo đúng như ví dụ trong tài liệu. Các bạn có thể kiểm tra tính chính xác.
    - Sau khi đã tìm được cặp omega sao cho việc đảo bit làm cho giá trị của ma trận đầu vào thay đổi ít nhất ta thu được ma trận sau khi đảo. Ma trận đó là ma trận chứa giá trị cần giấu. Nếu làm trên file ảnh ta chỉ việc save file ảnh với dữ liệu đã thay đổi sang file khác là đã thu được ảnh chứa tin giấu.
    - Chú ý (Ví dụ trong tài liệu đang tính toán sai. Kết quả như trong chương trình mình làm là đúng. )
    - Vấn đề còn lại là từ ma trận sau khi đảo bit mình sẽ làm như thế nào để tách được giá trị vừa giấu vào đó. Vấn đề này mình sẽ hướng dẫn các bạn ở bài sau… [IMG]images/smilies/biggrin.png[/IMG]
    - Đây là link source của bài viết này.
    - http://www.4shared.com/rar/KfLOb6p_/HidingValue.html?
    -
    Cảm ơn các bạn đã đọc

 

 
Trang 2 của 4 Đầu tiênĐầu tiên 1234 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •