---
# System prepended metadata

title: Invertible Visual Processing

---

## Evaluation protocol

```
output/
  - target
    - cover
      - 000.png
      - 001.png
      - ...
    - message
      - 000.png
      - 001.png
      - ...
  - reconst
    - cover
      - 000.png
      - 001.png
      - ...
    - message
      - 000.png
      - 001.png
      - ...
```
Take Invertible Grayscale as an example: (x = an image from VOC2012 testset)

target cover: grayscale(x)
target message: x
reconst cover: encode(x)
reconst message: decode(encode(x))

x should be resize to 512 on the shorter side and center cropped, i.e.
```py
transforms.Resize(args.resolution, interpolation=transforms.InterpolationMode.BILINEAR),
transforms.CenterCrop(args.resolution),
transforms.ToTensor(),
```

## Related work

- [Invertible Grayscale](https://ttwong12.github.io/papers/invertgray/invertgray.html) [SIGGRAPH ASIA 2018]
    - Operation: original ⇔ grayscale
    - Dataset: VOC2012
    - <span style="color: red">Eval code incomplete :(</span>
        - [Ethan] reproduced env and codes w/ 2080Ti GPU
- [HiDDeN: Hiding Data with Deep Networks](https://openaccess.thecvf.com/content_ECCV_2018/html/Jiren_Zhu_HiDDeN_Hiding_Data_ECCV_2018_paper.html) [ECCV 2018]
- [Mononizing Binocular Videos](https://ttwong12.github.io/papers/invbino/invbino.html) [ToG 2020]
    - Operation: left-view ⇔ right-view
    - Dataset: Flickr1024
    - <span style="color: red">Env too old :(</span>
        - [Ethan] reproduced env and codes w/ 2080Ti GPU 
- [Self-Contained Stylization via Steganography for Reverse and Serial  Style Transfer](https://github.com/IShengFang/Self-Contained_Stylization) [WACV 2020]
    - Operation: original ⇔ style-transfered
    - Dataset: MSCOCO, WikiArt
    - [Ethan] Training on 216
        - 5k iterations not enough
        - 20k iterations exp collapse at 7.7k iter
            - ![image](https://hackmd.io/_uploads/HkvucxiM0.png)
            - resume from 7.5k iter
        - Eval protocol
            - 1000 random content, and 10 random style for each content
            - i.e.
              ```
              - content 0
                  - style 0
                  - style 1
                  - ...
                  - style 9
              - content 1
                  - style 0
                  - style 1
                  - ...
                  - style 9
              - ...
              - content 999
                  - style 0
                  - style 1
                  - ...
                  - style 9
              ```

- [HiNet: Deep Image Hiding by Invertible Network](https://openaccess.thecvf.com/content/ICCV2021/html/Jing_HiNet_Deep_Image_Hiding_by_Invertible_Network_ICCV_2021_paper.html) [ICCV 2021]
- [Deep Halftoning with Reversible Binary Pattern](https://ttwong12.github.io/papers/invhalftone/invhalftone.html) [ICCV 2021]
    - Operation: original ⇔ halftoned
    - Dataset: VOC2012
    - <span style="color: red">Fundamental difference in task setting, will elaborate in related work</span>
- [Robust invertible image steganography](https://openaccess.thecvf.com/content/CVPR2022/papers/Xu_Robust_Invertible_Image_Steganography_CVPR_2022_paper.pdf) [CVPR 2022]

- [Learning-based image steganography and watermarking: A survey](https://www.sciencedirect.com/science/article/pii/S0957417424005815?via%3Dihub)
- [CRoSS: Diffusion Model Makes Controllable, Robust and Secure Image Steganography](https://proceedings.neurips.cc/paper_files/paper/2023/file/ff99390b6e942fb1dd7023f787fb0a27-Paper-Conference.pdf) [NeurIPS 2023]
    - https://github.com/vvictoryuki/CRoSS
- [StyleStegan: Leak-free Style Transfer Based on
Feature Steganography](https://arxiv.org/abs/2307.00225) [APSIPA ASC 2023]
    - Operation: original ⇔ style-transfered
    - Dataset: MSCOCO, WikiArt
- [Scale-arbitrary Invertible Image Downscaling](https://doubiiu.github.io/projects/aidn/) [TIP 2023]
