none
Ajuda por favor.... Aplicação para esteganografar texto em imagens BMP utilizando compressão RLE RRS feed

  • Pergunta

  • Olá pessoal, se alguém puder me ajudar por favor ficarei muito grato. Sou novato em desenvolvimento e preciso concluir minha monografia. Preciso criar uma aplicação para ocultar textos em imagens utilizando a técnica LSB e compressão RLE.

    Alguém consegue me auxiliar, não consigo achar material claro, pois entendo muito pouco de desenvolvimento.

    Obrigado pessoal!

    terça-feira, 16 de setembro de 2014 00:30

Respostas

  • Desculpe-me.. mas em qual linguagem vc esta pretendendo fazer isso?

    Isso esta bem longe de uma coisa trivial e exige um bom conhecimento em programaçao... 

    Veja se este exemplo em C# aqui ajuda:

    http://www.codeproject.com/Tips/635715/Steganography-Simple-Implementation-in-Csharp

    Como voce pode ver o codigo é complexo.

    Att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    terça-feira, 16 de setembro de 2014 00:46
    Moderador
  • Compressao RLE é a mais simples dos metodos de compressao... Funciona muito bem com imagens.

    A base é a seguinte: imaginar como uma linha unica (por exemplo, uma imagem 32x32 se transforma em uma imagem 1024x1) e fazer a seguinte operaçao.. percorrer essa linha verificando se os bytes sao iguais e incrementtando um contador.. a cada vez que for diferente, pare o contador, armazene o valor e o byte e recomece a contar até quando houver uma diferença.

    Um exemplo de uma imagem 4x4 de 256 bit (preto e branco ja transformado em um vetor 16x1) 

    25500255 0000 255000 0000

    Processo RLE

    1 255|2 0|1 255|4 0|1 255|7 0

    Ou seja, 1 vez o byte 255, 2 vezes 0, 1 vez 255, 4 vezes o 0, 1 vez o 255, 7 vezes o 0... com isso transformamos uma imagem de 16 bytes em uma imagem comprimida de 12 bytes... Note que se a imagem fosse toda branca a compressao seria 2 bytes: 16 vezes o 255 (16 255)

    O rle funciona bem em imagems que tem alta repetiçao de uam mesma cor, como um fundo azul... e fica pior se há muita variaça de cor.. se a mudança ocorre a cada byte, entao RLE nao presta.

    Att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------


    terça-feira, 16 de setembro de 2014 12:35
    Moderador

Todas as Respostas

  • Desculpe-me.. mas em qual linguagem vc esta pretendendo fazer isso?

    Isso esta bem longe de uma coisa trivial e exige um bom conhecimento em programaçao... 

    Veja se este exemplo em C# aqui ajuda:

    http://www.codeproject.com/Tips/635715/Steganography-Simple-Implementation-in-Csharp

    Como voce pode ver o codigo é complexo.

    Att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    terça-feira, 16 de setembro de 2014 00:46
    Moderador
  • Poxa é justamente em C#.

    Agradeço muito sua ajuda Willian, pelo menos agora tenho um norte para conseguir desenvolver em cima e tentar aplicar compressão RLE.

    Att

    terça-feira, 16 de setembro de 2014 01:27
  • Compressao RLE é a mais simples dos metodos de compressao... Funciona muito bem com imagens.

    A base é a seguinte: imaginar como uma linha unica (por exemplo, uma imagem 32x32 se transforma em uma imagem 1024x1) e fazer a seguinte operaçao.. percorrer essa linha verificando se os bytes sao iguais e incrementtando um contador.. a cada vez que for diferente, pare o contador, armazene o valor e o byte e recomece a contar até quando houver uma diferença.

    Um exemplo de uma imagem 4x4 de 256 bit (preto e branco ja transformado em um vetor 16x1) 

    25500255 0000 255000 0000

    Processo RLE

    1 255|2 0|1 255|4 0|1 255|7 0

    Ou seja, 1 vez o byte 255, 2 vezes 0, 1 vez 255, 4 vezes o 0, 1 vez o 255, 7 vezes o 0... com isso transformamos uma imagem de 16 bytes em uma imagem comprimida de 12 bytes... Note que se a imagem fosse toda branca a compressao seria 2 bytes: 16 vezes o 255 (16 255)

    O rle funciona bem em imagems que tem alta repetiçao de uam mesma cor, como um fundo azul... e fica pior se há muita variaça de cor.. se a mudança ocorre a cada byte, entao RLE nao presta.

    Att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------


    terça-feira, 16 de setembro de 2014 12:35
    Moderador
  • Obrigado mais uma vez William!

    Vou tentar fazer, vamos ver o que sai. kkkkk

    Abraços

    quarta-feira, 17 de setembro de 2014 19:19