diff --git a/README.md b/README.md index ea6abfaf81f009d3c0dfd382788e1cf02a3b6e18..59edd3246dc384e6ddfa5bcf0aaed33c7f0fd0af 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,4 @@ -# CNNImageCodec - -Учебный проект, посвященный сжатию изображений при помощи нейронных сетей +# Учебный проект, посвященный сжатию изображений при помощи нейронных сетей Данный простой кодек сжимает изображения размером 128x128 при помощи свёрточных нейронных сетей, квантования и адаптивного арифметического кодирования. В папке ./train/ находятся изображения, которые были использованы для обучения сети, в папке ./test/ находятся изображения для демонстрации результатов. @@ -18,7 +16,7 @@ 2. \hat y^i_3 = y_{max}\cdot\left(\frac{x_i}{2^{b}}+\frac{1}{2^{b+1}}\right) 3. Слой 1. Принимает \hat y_3. Свёртка 3\times 3, ReLu. На выходе \hat y_2 размером 32x32x16. 4. Слой 2. Принимает \hat y_2. Свёртка 5\times 5, ReLu. На выходе \hat y_3 размером 64x64x32. -4. Слой 3. Принимает \hat y_3. Свёртка 5\times 5, ReLu. На выходе изображение \hat x размером 128x128x3. +4. Слой 3. Принимает \hat y_3. Свёртка 7\times 7, ReLu. На выходе изображение \hat x размером 128x128x3. На следующем примере показан случай, когда при обучении к вектору y_3 не прибавляется шум, соразмерный квантованию с шагом 2^3. Как можно заметить, это приводит к появлению артефактов. @@ -28,6 +26,8 @@ артефакты устранились, что привело к тому, что данная простейшая модель выигрывает у JPEG по качеству на высоких степенях сжатия. ![Обучения c добавлением шума. Epoch=3000](./doc/AI_Epoch3000_Noisebt3.png) +ААК из [1] реализован на языке Си и подключается к коду как библиотека. Для сборки модуля необходимо выполнить команды, которые находятся в файле +EntropyCompile.bat [1] Ian H. Witten, Radford M. Neal, and John G. Cleary, “Arithmetic coding for data compression,” Commun. ACM, vol. 30, no. 6, pp. 520–540, jun 1987. \ No newline at end of file