Hello, I want to use the gray wolf algorithm to hide images.
3 次查看(过去 30 天)
显示 更早的评论
Hello, I want to use the gray wolf algorithm to hide images. But unfortunately, I am not proficient in MATLAB to be able to use this algorithm to optimize images to achieve the desired psnr. Can anyone help?
0 个评论
回答(2 个)
Sulaymon Eshkabilov
2022-12-24
Have you seen this published 3rd party toolbox of grey wolf optimizer: https://www.mathworks.com/matlabcentral/fileexchange/47258-grey-wolf-optimizer-toolbox
0 个评论
Walter Roberson
2022-12-25
The general steps would be:
- read in the image to hide and the cover image
- convert the image hide and cover image to binary (it would also common to quantize the image to hide, perhaps convert it to grayscale or even black and white)
- Using the discretized image and the cover image, optimize something using your favorite optimizer.
- Using information from the previous step, determine where to place bits in the cover image
- Using a technique such as LSB or DCT, embed the bits in the cover image. This might include embedding information in fixed positions about what hiding parameters were used
- make sure the modified image is appropriate scale and data type (the embedding process commonly produces double precision values in the range 0-ish to 255-ish rather than uint8)
- write out the modified image to a file
- Later, read in the modified image
- convert the modified image to binary
- using the information inserted into fixed positions, read out the information about where you hid the other bits
- using the information about where the other bits are, pull out the hidden bits from the modified image
- convert the hidden bits back into an image
- make sure the reconstructed image is the appropriate scale and data type
- write out the recovered image to a file (might not always be needed)
The problem you have is step 3, the "optimize something" step. You have not defined what you are optimizing -- and until you know what you are optimizing, there is no point in doing any of these steps.
There is no "natural" thing to optimize in this situation. There are a lot of things you could optimize -- which is about like saying that there are lot of different Rube Goldberg Machines that you could build. You could optimize the weights of a 768 degree polynomial to maximize the number of bits representing "purple" that get placed at locations that appear in the Fibonacci series. Would it be a good idea to do that? Probably not. Most of the things you could optimize with regards to hiding bits are probably not good ideas.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Segmentation and Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!