diff --git a/Chapter3/Augment training data by flipping.ipynb b/Chapter3/Augment training data by flipping.ipynb new file mode 100644 index 0000000..b315174 --- /dev/null +++ b/Chapter3/Augment training data by flipping.ipynb @@ -0,0 +1,2978 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "BARS_FOLDER = \"../rotated_barcodes/bars/\"\n", + "OUTPUT_FOLDER = \"../rotated_barcodes/bars/\"" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "from os import listdir\n", + "from os.path import isfile, join\n", + "\n", + "paths = [BARS_FOLDER + f for f in listdir(BARS_FOLDER) if isfile(join(BARS_FOLDER, f))]" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(449, 4)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
pathdecbinclass
0../rotated_barcodes/bars/1002792_0.png10027920b11110100110100101000[19, 18, 17, 16, 14, 11, 10, 8, 5, 3]
1../rotated_barcodes/bars/1002872_1.png10028720b11110100110101111000[19, 18, 17, 16, 14, 11, 10, 8, 6, 5, 4, 3]
2../rotated_barcodes/bars/1004045_68.png10040450b11110101001000001101[19, 18, 17, 16, 14, 12, 9, 3, 2, 0]
3../rotated_barcodes/bars/1004047_120.png10040470b11110101001000001111[19, 18, 17, 16, 14, 12, 9, 3, 2, 1, 0]
4../rotated_barcodes/bars/1007115_22.png10071150b11110101111000001011[19, 18, 17, 16, 14, 12, 11, 10, 9, 3, 1, 0]
\n", + "
" + ], + "text/plain": [ + " path dec bin \\\n", + "0 ../rotated_barcodes/bars/1002792_0.png 1002792 0b11110100110100101000 \n", + "1 ../rotated_barcodes/bars/1002872_1.png 1002872 0b11110100110101111000 \n", + "2 ../rotated_barcodes/bars/1004045_68.png 1004045 0b11110101001000001101 \n", + "3 ../rotated_barcodes/bars/1004047_120.png 1004047 0b11110101001000001111 \n", + "4 ../rotated_barcodes/bars/1007115_22.png 1007115 0b11110101111000001011 \n", + "\n", + " class \n", + "0 [19, 18, 17, 16, 14, 11, 10, 8, 5, 3] \n", + "1 [19, 18, 17, 16, 14, 11, 10, 8, 6, 5, 4, 3] \n", + "2 [19, 18, 17, 16, 14, 12, 9, 3, 2, 0] \n", + "3 [19, 18, 17, 16, 14, 12, 9, 3, 2, 1, 0] \n", + "4 [19, 18, 17, 16, 14, 12, 11, 10, 9, 3, 1, 0] " + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "df = pd.DataFrame({'path': paths})\n", + "df[\"dec\"] = df.apply(lambda x: int(x['path'].split(\"/\")[-1].split(\"_\")[0]), axis=1)\n", + "df[\"bin\"] = df.apply(lambda x: bin(x['dec']), axis=1)\n", + "df[\"class\"] = df.apply(lambda x: [i for i in reversed(range(20)) if (x['dec'] & 1 << i) != 0], axis=1)\n", + " \n", + "print(df.shape)\n", + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "from PIL import Image\n", + "from PIL import ImageOps" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "h_m = {0:1, 1:0, 2:3, 3:2, \n", + " 4:5, 5:4, 6:7, 7:6, \n", + " 8:9, 9:8, 10:11, 11:10, \n", + " 12:13, 13:12, 14:15, 15:14, \n", + " 16:17, 17:16, 18:19, 19:18}\n", + "\n", + "v_m = {0:19, 19:0, 3:16, 16:3,\n", + " 1:18, 18:1, 2:17, 17:2,\n", + " 4:15, 15:4, 5:14, 14:5,\n", + " 7:12, 12:7, 6:13, 13:6,\n", + " 8:11, 11:8, 9:10, 10:9}\n", + "\n", + "\n", + "def h_mirror_code(code):\n", + " mirror_code = 0\n", + " for i in range(20):\n", + " mirror_code += (1 if code & 1 << h_m[i] != 0 else 0) << i\n", + " \n", + " return mirror_code \n", + "\n", + "def v_mirror_code(code):\n", + " mirror_code = 0\n", + " for i in range(20):\n", + " mirror_code += (1 if code & 1 << v_m[i] != 0 else 0) << i\n", + " \n", + " return mirror_code \n", + "\n", + "def hv_mirror_code(code):\n", + " mirror_code = 0\n", + " for i in range(20):\n", + " mirror_code += (1 if code & 1 << h_m[v_m[i]] != 0 else 0) << i\n", + " \n", + " return mirror_code " + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "../rotated_barcodes/bars/1002792_0.png 1002792\n", + "1019412\n", + "../rotated_barcodes/bars/1002872_1.png 1002872\n", + "1019572\n", + "../rotated_barcodes/bars/1004045_68.png 1004045\n", + "1024270\n", + "../rotated_barcodes/bars/1004047_120.png 1004047\n", + "1024271\n", + "../rotated_barcodes/bars/1007115_22.png 1007115\n", + "1027335\n", + "../rotated_barcodes/bars/1008617_100.png 1008617\n", + "1020886\n", + "../rotated_barcodes/bars/1008855_28.png 1008855\n", + "1022187\n", + "../rotated_barcodes/bars/1008962_2.png 1008962\n", + "1022593\n", + "../rotated_barcodes/bars/1009783_89.png 1009783\n", + "1021115\n", + "../rotated_barcodes/bars/1011307_73.png 1011307\n", + "1023383\n", + "../rotated_barcodes/bars/101150_71.png 101150\n", + "149293\n", + "../rotated_barcodes/bars/1011796_24.png 1011796\n", + "1028264\n", + "../rotated_barcodes/bars/1012500_92.png 1012500\n", + "1028904\n", + "../rotated_barcodes/bars/1014147_44.png 1014147\n", + "1029699\n", + "../rotated_barcodes/bars/1016272_3.png 1016272\n", + "1000160\n", + "../rotated_barcodes/bars/1019981_4.png 1019981\n", + "1007758\n", + "../rotated_barcodes/bars/1020151_85.png 1020151\n", + "1007867\n", + "../rotated_barcodes/bars/1020477_66.png 1020477\n", + "1007934\n", + "../rotated_barcodes/bars/1021722_32.png 1021722\n", + "1010469\n", + "../rotated_barcodes/bars/1024768_39.png 1024768\n", + "1004288\n", + "../rotated_barcodes/bars/1026078_5.png 1026078\n", + "1004589\n", + "../rotated_barcodes/bars/1028139_52.png 1028139\n", + "1011735\n", + "../rotated_barcodes/bars/1028152_6.png 1028152\n", + "1011764\n", + "../rotated_barcodes/bars/1029930_105.png 1029930\n", + "1014549\n", + "../rotated_barcodes/bars/1035909_15.png 1035909\n", + "1035594\n", + "../rotated_barcodes/bars/1035941_7.png 1035941\n", + "1035610\n", + "../rotated_barcodes/bars/1035978_109.png 1035978\n", + "1035717\n", + "../rotated_barcodes/bars/1040774_62.png 1040774\n", + "1036873\n", + "../rotated_barcodes/bars/1041429_83.png 1041429\n", + "1038378\n", + "../rotated_barcodes/bars/109721_59.png 109721\n", + "154726\n", + "../rotated_barcodes/bars/113886_62.png 113886\n", + "163053\n", + "../rotated_barcodes/bars/115580_3.png 115580\n", + "181180\n", + "../rotated_barcodes/bars/120042_83.png 120042\n", + "190677\n", + "../rotated_barcodes/bars/122735_124.png 122735\n", + "192415\n", + "../rotated_barcodes/bars/124788_14.png 124788\n", + "187320\n", + "../rotated_barcodes/bars/12587_127.png 12587\n", + "12823\n", + "../rotated_barcodes/bars/126342_51.png 126342\n", + "187977\n", + "../rotated_barcodes/bars/126627_2.png 126627\n", + "187731\n", + "../rotated_barcodes/bars/126888_8.png 126888\n", + "188244\n", + "../rotated_barcodes/bars/130414_9.png 130414\n", + "196253\n", + "../rotated_barcodes/bars/131257_10.png 131257\n", + "65654\n", + "../rotated_barcodes/bars/13253_59.png 13253\n", + "13258\n", + "../rotated_barcodes/bars/135472_11.png 135472\n", + "74288\n", + "../rotated_barcodes/bars/139281_12.png 139281\n", + "69666\n", + "../rotated_barcodes/bars/140809_56.png 140809\n", + "71942\n", + "../rotated_barcodes/bars/142139_13.png 142139\n", + "71479\n", + "../rotated_barcodes/bars/143779_14.png 143779\n", + "78419\n", + "../rotated_barcodes/bars/144008_67.png 144008\n", + "78148\n", + "../rotated_barcodes/bars/144547_20.png 144547\n", + "79955\n", + "../rotated_barcodes/bars/145681_25.png 145681\n", + "79394\n", + "../rotated_barcodes/bars/146199_104.png 146199\n", + "79659\n", + "../rotated_barcodes/bars/147052_15.png 147052\n", + "81308\n", + "../rotated_barcodes/bars/147941_16.png 147941\n", + "99034\n", + "../rotated_barcodes/bars/148374_71.png 148374\n", + "99177\n", + "../rotated_barcodes/bars/148419_17.png 148419\n", + "99267\n", + "../rotated_barcodes/bars/149391_11.png 149391\n", + "101199\n", + "../rotated_barcodes/bars/151253_18.png 151253\n", + "101866\n", + "../rotated_barcodes/bars/15302_19.png 15302\n", + "14281\n", + "../rotated_barcodes/bars/153584_15.png 153584\n", + "109552\n", + "../rotated_barcodes/bars/154141_52.png 154141\n", + "107822\n", + "../rotated_barcodes/bars/155050_108.png 155050\n", + "110165\n", + "../rotated_barcodes/bars/155196_121.png 155196\n", + "109884\n", + "../rotated_barcodes/bars/157572_73.png 157572\n", + "105288\n", + "../rotated_barcodes/bars/159225_69.png 159225\n", + "106230\n", + "../rotated_barcodes/bars/16107_101.png 16107\n", + "15831\n", + "../rotated_barcodes/bars/161487_20.png 161487\n", + "113103\n", + "../rotated_barcodes/bars/162332_82.png 162332\n", + "111916\n", + "../rotated_barcodes/bars/163924_22.png 163924\n", + "82088\n", + "../rotated_barcodes/bars/172939_52.png 172939\n", + "86855\n", + "../rotated_barcodes/bars/173698_80.png 173698\n", + "88385\n", + "../rotated_barcodes/bars/18010_21.png 18010\n", + "35237\n", + "../rotated_barcodes/bars/181531_22.png 181531\n", + "117287\n", + "../rotated_barcodes/bars/185046_99.png 185046\n", + "123369\n", + "../rotated_barcodes/bars/186315_23.png 186315\n", + "125895\n", + "../rotated_barcodes/bars/187453_70.png 187453\n", + "126014\n", + "../rotated_barcodes/bars/190403_65.png 190403\n", + "121795\n", + "../rotated_barcodes/bars/199045_24.png 199045\n", + "198218\n", + "../rotated_barcodes/bars/199198_101.png 199198\n", + "197933\n", + "../rotated_barcodes/bars/20031_25.png 20031\n", + "36159\n", + "../rotated_barcodes/bars/210504_57.png 210504\n", + "211332\n", + "../rotated_barcodes/bars/210846_113.png 210846\n", + "211821\n", + "../rotated_barcodes/bars/215763_121.png 215763\n", + "230883\n", + "../rotated_barcodes/bars/218132_26.png 218132\n", + "239656\n", + "../rotated_barcodes/bars/221768_52.png 221768\n", + "233860\n", + "../rotated_barcodes/bars/223765_26.png 223765\n", + "234794\n", + "../rotated_barcodes/bars/224264_89.png 224264\n", + "236548\n", + "../rotated_barcodes/bars/229904_24.png 229904\n", + "213280\n", + "../rotated_barcodes/bars/231833_35.png 231833\n", + "214630\n", + "../rotated_barcodes/bars/232737_109.png 232737\n", + "216594\n", + "../rotated_barcodes/bars/233336_61.png 233336\n", + "217012\n", + "../rotated_barcodes/bars/240408_37.png 240408\n", + "218916\n", + "../rotated_barcodes/bars/242463_53.png 242463\n", + "226095\n", + "../rotated_barcodes/bars/24309_22.png 24309\n", + "44538\n", + "../rotated_barcodes/bars/244938_44.png 244938\n", + "228549\n", + "../rotated_barcodes/bars/245756_37.png 245756\n", + "229372\n", + "../rotated_barcodes/bars/246281_123.png 246281\n", + "246022\n", + "../rotated_barcodes/bars/247226_107.png 247226\n", + "248437\n", + "../rotated_barcodes/bars/248_27.png 248\n", + "244\n", + "../rotated_barcodes/bars/2506_28.png 2506\n", + "1733\n", + "../rotated_barcodes/bars/251415_29.png 251415\n", + "256299\n", + "../rotated_barcodes/bars/251453_83.png 251453\n", + "256318\n", + "../rotated_barcodes/bars/258898_30.png 258898\n", + "258977\n", + "../rotated_barcodes/bars/259397_31.png 259397\n", + "260746\n", + "../rotated_barcodes/bars/262596_73.png 262596\n", + "525000\n", + "../rotated_barcodes/bars/264960_32.png 264960\n", + "526080\n", + "../rotated_barcodes/bars/265896_69.png 265896\n", + "527700\n", + "../rotated_barcodes/bars/266329_46.png 266329\n", + "532646\n", + "../rotated_barcodes/bars/270635_112.png 270635\n", + "528919\n", + "../rotated_barcodes/bars/273053_5.png 273053\n", + "529774\n", + "../rotated_barcodes/bars/273058_33.png 273058\n", + "529745\n", + "../rotated_barcodes/bars/281278_15.png 281278\n", + "558461\n", + "../rotated_barcodes/bars/284608_112.png 284608\n", + "568256\n", + "../rotated_barcodes/bars/284732_6.png 284732\n", + "566332\n", + "../rotated_barcodes/bars/286167_2.png 286167\n", + "569067\n", + "../rotated_barcodes/bars/288145_100.png 288145\n", + "563810\n", + "../rotated_barcodes/bars/290213_34.png 290213\n", + "564826\n", + "../rotated_barcodes/bars/291654_35.png 291654\n", + "570249\n", + "../rotated_barcodes/bars/292187_124.png 292187\n", + "572071\n", + "../rotated_barcodes/bars/294025_66.png 294025\n", + "572486\n", + "../rotated_barcodes/bars/294663_71.png 294663\n", + "573195\n", + "../rotated_barcodes/bars/295622_109.png 295622\n", + "541129\n", + "../rotated_barcodes/bars/296850_88.png 296850\n", + "543585\n", + "../rotated_barcodes/bars/297119_80.png 297119\n", + "541807\n", + "../rotated_barcodes/bars/299368_36.png 299368\n", + "549524\n", + "../rotated_barcodes/bars/300079_37.png 300079\n", + "550943\n", + "../rotated_barcodes/bars/30023_84.png 30023\n", + "47755\n", + "../rotated_barcodes/bars/300568_38.png 300568\n", + "551204\n", + "../rotated_barcodes/bars/301762_5.png 301762\n", + "550337\n", + "../rotated_barcodes/bars/305388_39.png 305388\n", + "546012\n", + "../rotated_barcodes/bars/306918_22.png 306918\n", + "548313\n", + "../rotated_barcodes/bars/31491_40.png 31491\n", + "46851\n", + "../rotated_barcodes/bars/315942_88.png 315942\n", + "581913\n", + "../rotated_barcodes/bars/317498_55.png 317498\n", + "582709\n", + "../rotated_barcodes/bars/325293_40.png 325293\n", + "588126\n", + "../rotated_barcodes/bars/326986_32.png 326986\n", + "589445\n", + "../rotated_barcodes/bars/329008_28.png 329008\n", + "657968\n", + "../rotated_barcodes/bars/329481_89.png 329481\n", + "658182\n", + "../rotated_barcodes/bars/333128_117.png 333128\n", + "666244\n", + "../rotated_barcodes/bars/333461_45.png 333461\n", + "665962\n", + "../rotated_barcodes/bars/333480_41.png 333480\n", + "665940\n", + "../rotated_barcodes/bars/33554_42.png 33554\n", + "17185\n", + "../rotated_barcodes/bars/340162_43.png 340162\n", + "667841\n", + "../rotated_barcodes/bars/341416_24.png 341416\n", + "670292\n", + "../rotated_barcodes/bars/344153_97.png 344153\n", + "688294\n", + "../rotated_barcodes/bars/348751_63.png 348751\n", + "696719\n", + "../rotated_barcodes/bars/355518_108.png 355518\n", + "695421\n", + "../rotated_barcodes/bars/357680_78.png 357680\n", + "703024\n", + "../rotated_barcodes/bars/357744_44.png 357744\n", + "703152\n", + "../rotated_barcodes/bars/360668_45.png 360668\n", + "671980\n", + "../rotated_barcodes/bars/363733_46.png 363733\n", + "675050\n", + "../rotated_barcodes/bars/364158_76.png 364158\n", + "675261\n", + "../rotated_barcodes/bars/364316_118.png 364316\n", + "675628\n", + "../rotated_barcodes/bars/367568_122.png 367568\n", + "681952\n", + "../rotated_barcodes/bars/383191_47.png 383191\n", + "713963\n", + "../rotated_barcodes/bars/383958_46.png 383958\n", + "714729\n", + "../rotated_barcodes/bars/384036_117.png 384036\n", + "715800\n", + "../rotated_barcodes/bars/384486_32.png 384486\n", + "716505\n", + "../rotated_barcodes/bars/386803_120.png 386803\n", + "711155\n", + "../rotated_barcodes/bars/389864_0.png 389864\n", + "717268\n", + "../rotated_barcodes/bars/391006_72.png 391006\n", + "719789\n", + "../rotated_barcodes/bars/39253_124.png 39253\n", + "26282\n", + "../rotated_barcodes/bars/393784_97.png 393784\n", + "590132\n", + "../rotated_barcodes/bars/395243_48.png 395243\n", + "592855\n", + "../rotated_barcodes/bars/395917_56.png 395917\n", + "591182\n", + "../rotated_barcodes/bars/396532_99.png 396532\n", + "593144\n", + "../rotated_barcodes/bars/403583_30.png 403583\n", + "595135\n", + "../rotated_barcodes/bars/404136_17.png 404136\n", + "595284\n", + "../rotated_barcodes/bars/40834_51.png 40834\n", + "28481\n", + "../rotated_barcodes/bars/412309_49.png 412309\n", + "623978\n", + "../rotated_barcodes/bars/414351_48.png 414351\n", + "631119\n", + "../rotated_barcodes/bars/416041_69.png 416041\n", + "632342\n", + "../rotated_barcodes/bars/416159_50.png 416159\n", + "632431\n", + "../rotated_barcodes/bars/418033_53.png 418033\n", + "626930\n", + "../rotated_barcodes/bars/419524_13.png 419524\n", + "629192\n", + "../rotated_barcodes/bars/424453_25.png 424453\n", + "636170\n", + "../rotated_barcodes/bars/427187_88.png 427187\n", + "608371\n", + "../rotated_barcodes/bars/431397_51.png 431397\n", + "616986\n", + "../rotated_barcodes/bars/432227_53.png 432227\n", + "615571\n", + "../rotated_barcodes/bars/432242_87.png 432242\n", + "615601\n", + "../rotated_barcodes/bars/432600_52.png 432600\n", + "616164\n", + "../rotated_barcodes/bars/434084_43.png 434084\n", + "618328\n", + "../rotated_barcodes/bars/436168_61.png 436168\n", + "613316\n", + "../rotated_barcodes/bars/441685_49.png 441685\n", + "622250\n", + "../rotated_barcodes/bars/442442_53.png 442442\n", + "639109\n", + "../rotated_barcodes/bars/444775_50.png 444775\n", + "640667\n", + "../rotated_barcodes/bars/448160_54.png 448160\n", + "649552\n", + "../rotated_barcodes/bars/451851_55.png 451851\n", + "645639\n", + "../rotated_barcodes/bars/452150_69.png 452150\n", + "645433\n", + "../rotated_barcodes/bars/453251_56.png 453251\n", + "644419\n", + "../rotated_barcodes/bars/453899_48.png 453899\n", + "646663\n", + "../rotated_barcodes/bars/454470_57.png 454470\n", + "647049\n", + "../rotated_barcodes/bars/456589_123.png 456589\n", + "654158\n", + "../rotated_barcodes/bars/458486_112.png 458486\n", + "654841\n", + "../rotated_barcodes/bars/467236_116.png 467236\n", + "725528\n", + "../rotated_barcodes/bars/467510_51.png 467510\n", + "725305\n", + "../rotated_barcodes/bars/47293_58.png 47293\n", + "29822\n", + "../rotated_barcodes/bars/47761_59.png 47761\n", + "30050\n", + "../rotated_barcodes/bars/478889_91.png 478889\n", + "757078\n", + "../rotated_barcodes/bars/479012_117.png 479012\n", + "757528\n", + "../rotated_barcodes/bars/480074_60.png 480074\n", + "762757\n", + "../rotated_barcodes/bars/482165_125.png 482165\n", + "763834\n", + "../rotated_barcodes/bars/487394_118.png 487394\n", + "761809\n", + "../rotated_barcodes/bars/49071_61.png 49071\n", + "32607\n", + "../rotated_barcodes/bars/49446_108.png 49446\n", + "49689\n", + "../rotated_barcodes/bars/49770_12.png 49770\n", + "49557\n", + "../rotated_barcodes/bars/498449_98.png 498449\n", + "747298\n", + "../rotated_barcodes/bars/498754_39.png 498754\n", + "748673\n", + "../rotated_barcodes/bars/501067_31.png 501067\n", + "744071\n", + "../rotated_barcodes/bars/501242_124.png 501242\n", + "744181\n", + "../rotated_barcodes/bars/501871_21.png 501871\n", + "742559\n", + "../rotated_barcodes/bars/501949_62.png 501949\n", + "742526\n", + "../rotated_barcodes/bars/50253_96.png 50253\n", + "51342\n", + "../rotated_barcodes/bars/502690_63.png 502690\n", + "743249\n", + "../rotated_barcodes/bars/505531_101.png 505531\n", + "751991\n", + "../rotated_barcodes/bars/505717_123.png 505717\n", + "752570\n", + "../rotated_barcodes/bars/505824_53.png 505824\n", + "752592\n", + "../rotated_barcodes/bars/508194_64.png 508194\n", + "770577\n", + "../rotated_barcodes/bars/509719_65.png 509719\n", + "772907\n", + "../rotated_barcodes/bars/518458_63.png 518458\n", + "775733\n", + "../rotated_barcodes/bars/521284_120.png 521284\n", + "784520\n", + "../rotated_barcodes/bars/521421_46.png 521421\n", + "784590\n", + "../rotated_barcodes/bars/521815_25.png 521815\n", + "784811\n", + "../rotated_barcodes/bars/522180_22.png 522180\n", + "785352\n", + "../rotated_barcodes/bars/523189_111.png 523189\n", + "784250\n", + "../rotated_barcodes/bars/526161_81.png 526161\n", + "265122\n", + "../rotated_barcodes/bars/526304_66.png 526304\n", + "265168\n", + "../rotated_barcodes/bars/529990_101.png 529990\n", + "272777\n", + "../rotated_barcodes/bars/530532_28.png 530532\n", + "271512\n", + "../rotated_barcodes/bars/533072_116.png 533072\n", + "266656\n", + "../rotated_barcodes/bars/534070_92.png 534070\n", + "268601\n", + "../rotated_barcodes/bars/534330_88.png 534330\n", + "269109\n", + "../rotated_barcodes/bars/537690_43.png 537690\n", + "276645\n", + "../rotated_barcodes/bars/540285_89.png 540285\n", + "277950\n", + "../rotated_barcodes/bars/543488_110.png 543488\n", + "296704\n", + "../rotated_barcodes/bars/54779_52.png 54779\n", + "60151\n", + "../rotated_barcodes/bars/548158_6.png 548158\n", + "306749\n", + "../rotated_barcodes/bars/549069_12.png 549069\n", + "299214\n", + "../rotated_barcodes/bars/550474_62.png 550474\n", + "301445\n", + "../rotated_barcodes/bars/554801_80.png 554801\n", + "310066\n", + "../rotated_barcodes/bars/557114_2.png 557114\n", + "278581\n", + "../rotated_barcodes/bars/558205_38.png 558205\n", + "280766\n", + "../rotated_barcodes/bars/558874_67.png 558874\n", + "281381\n", + "../rotated_barcodes/bars/559328_0.png 559328\n", + "279760\n", + "../rotated_barcodes/bars/559558_68.png 559558\n", + "280265\n", + "../rotated_barcodes/bars/559796_69.png 559796\n", + "279928\n", + "../rotated_barcodes/bars/562075_71.png 562075\n", + "287591\n", + "../rotated_barcodes/bars/564833_33.png 564833\n", + "290194\n", + "../rotated_barcodes/bars/564908_25.png 564908\n", + "290140\n", + "../rotated_barcodes/bars/566777_126.png 566777\n", + "285430\n", + "../rotated_barcodes/bars/567460_64.png 567460\n", + "283736\n", + "../rotated_barcodes/bars/568041_85.png 568041\n", + "284118\n", + "../rotated_barcodes/bars/573241_117.png 573241\n", + "294710\n", + "../rotated_barcodes/bars/576634_122.png 576634\n", + "314549\n", + "../rotated_barcodes/bars/579216_96.png 579216\n", + "321888\n", + "../rotated_barcodes/bars/579606_40.png 579606\n", + "320553\n", + "../rotated_barcodes/bars/580747_71.png 580747\n", + "322631\n", + "../rotated_barcodes/bars/581727_34.png 581727\n", + "315567\n", + "../rotated_barcodes/bars/582019_107.png 582019\n", + "315971\n", + "../rotated_barcodes/bars/582167_114.png 582167\n", + "315691\n", + "../rotated_barcodes/bars/583494_70.png 583494\n", + "318345\n", + "../rotated_barcodes/bars/585633_12.png 585633\n", + "319314\n", + "../rotated_barcodes/bars/59170_56.png 59170\n", + "56081\n", + "../rotated_barcodes/bars/59603_9.png 59603\n", + "54499\n", + "../rotated_barcodes/bars/596829_77.png 596829\n", + "403374\n", + "../rotated_barcodes/bars/599069_71.png 599069\n", + "399406\n", + "../rotated_barcodes/bars/600235_72.png 600235\n", + "398423\n", + "../rotated_barcodes/bars/603488_73.png 603488\n", + "408208\n", + "../rotated_barcodes/bars/609970_124.png 609970\n", + "429425\n", + "../rotated_barcodes/bars/610706_39.png 610706\n", + "434785\n", + "../rotated_barcodes/bars/610898_74.png 610898\n", + "434593\n", + "../rotated_barcodes/bars/61115_80.png 61115\n", + "56695\n", + "../rotated_barcodes/bars/611988_30.png 611988\n", + "436584\n", + "../rotated_barcodes/bars/613634_109.png 613634\n", + "437761\n", + "../rotated_barcodes/bars/615991_75.png 615991\n", + "432443\n", + "../rotated_barcodes/bars/616158_124.png 616158\n", + "432621\n", + "../rotated_barcodes/bars/619523_123.png 619523\n", + "440323\n", + "../rotated_barcodes/bars/621907_65.png 621907\n", + "442019\n", + "../rotated_barcodes/bars/623463_76.png 623463\n", + "410523\n", + "../rotated_barcodes/bars/627693_2.png 627693\n", + "418782\n", + "../rotated_barcodes/bars/630434_77.png 630434\n", + "421201\n", + "../rotated_barcodes/bars/632878_31.png 632878\n", + "414749\n", + "../rotated_barcodes/bars/634540_19.png 634540\n", + "417116\n", + "../rotated_barcodes/bars/636428_107.png 636428\n", + "424204\n", + "../rotated_barcodes/bars/638290_78.png 638290\n", + "425633\n", + "../rotated_barcodes/bars/640276_98.png 640276\n", + "444968\n", + "../rotated_barcodes/bars/642999_69.png 642999\n", + "446331\n", + "../rotated_barcodes/bars/644815_37.png 644815\n", + "453071\n", + "../rotated_barcodes/bars/646101_35.png 646101\n", + "452586\n", + "../rotated_barcodes/bars/646786_79.png 646786\n", + "453953\n", + "../rotated_barcodes/bars/648736_78.png 648736\n", + "448784\n", + "../rotated_barcodes/bars/653491_80.png 653491\n", + "455795\n", + "../rotated_barcodes/bars/655403_3.png 655403\n", + "327703\n", + "../rotated_barcodes/bars/656505_81.png 656505\n", + "329910\n", + "../rotated_barcodes/bars/66032_82.png 66032\n", + "131824\n", + "../rotated_barcodes/bars/660777_82.png 660777\n", + "338454\n", + "../rotated_barcodes/bars/669157_118.png 669157\n", + "342746\n", + "../rotated_barcodes/bars/672883_6.png 672883\n", + "362675\n", + "../rotated_barcodes/bars/675381_25.png 675381\n", + "363834\n", + "../rotated_barcodes/bars/676428_83.png 676428\n", + "369036\n", + "../rotated_barcodes/bars/682571_43.png 682571\n", + "365959\n", + "../rotated_barcodes/bars/684197_84.png 684197\n", + "372826\n", + "../rotated_barcodes/bars/684270_26.png 684270\n", + "372957\n", + "../rotated_barcodes/bars/68507_85.png 68507\n", + "132967\n", + "../rotated_barcodes/bars/687733_17.png 687733\n", + "376250\n", + "../rotated_barcodes/bars/68810_68.png 68810\n", + "134341\n", + "../rotated_barcodes/bars/688747_50.png 688747\n", + "344471\n", + "../rotated_barcodes/bars/689244_86.png 689244\n", + "346284\n", + "../rotated_barcodes/bars/689480_56.png 689480\n", + "346756\n", + "../rotated_barcodes/bars/692560_82.png 692560\n", + "352928\n", + "../rotated_barcodes/bars/692726_87.png 692726\n", + "353017\n", + "../rotated_barcodes/bars/692768_9.png 692768\n", + "352528\n", + "../rotated_barcodes/bars/696430_99.png 696430\n", + "348317\n", + "../rotated_barcodes/bars/698073_10.png 698073\n", + "350694\n", + "../rotated_barcodes/bars/698408_105.png 698408\n", + "349204\n", + "../rotated_barcodes/bars/702492_88.png 702492\n", + "357420\n", + "../rotated_barcodes/bars/702831_70.png 702831\n", + "358047\n", + "../rotated_barcodes/bars/704977_116.png 704977\n", + "377570\n", + "../rotated_barcodes/bars/706303_89.png 706303\n", + "379391\n", + "../rotated_barcodes/bars/70829_19.png 70829\n", + "141406\n", + "../rotated_barcodes/bars/709474_90.png 709474\n", + "385937\n", + "../rotated_barcodes/bars/709541_68.png 709541\n", + "385882\n", + "../rotated_barcodes/bars/710047_91.png 710047\n", + "387695\n", + "../rotated_barcodes/bars/711747_65.png 711747\n", + "388227\n", + "../rotated_barcodes/bars/713673_92.png 713673\n", + "381894\n", + "../rotated_barcodes/bars/713837_31.png 713837\n", + "383134\n", + "../rotated_barcodes/bars/71578_1.png 71578\n", + "142181\n", + "../rotated_barcodes/bars/718346_93.png 718346\n", + "391429\n", + "../rotated_barcodes/bars/719011_30.png 719011\n", + "390227\n", + "../rotated_barcodes/bars/723407_94.png 723407\n", + "460495\n", + "../rotated_barcodes/bars/724354_98.png 724354\n", + "462401\n", + "../rotated_barcodes/bars/730247_73.png 730247\n", + "464971\n", + "../rotated_barcodes/bars/741130_28.png 741130\n", + "495365\n", + "../rotated_barcodes/bars/744180_71.png 744180\n", + "501240\n", + "../rotated_barcodes/bars/746461_105.png 746461\n", + "496622\n", + "../rotated_barcodes/bars/751772_95.png 751772\n", + "504940\n", + "../rotated_barcodes/bars/752545_85.png 752545\n", + "505682\n", + "../rotated_barcodes/bars/75293_60.png 75293\n", + "137518\n", + "../rotated_barcodes/bars/762095_96.png 762095\n", + "479455\n", + "../rotated_barcodes/bars/762765_97.png 762765\n", + "480078\n", + "../rotated_barcodes/bars/763550_3.png 763550\n", + "481645\n", + "../rotated_barcodes/bars/763624_6.png 763624\n", + "481748\n", + "../rotated_barcodes/bars/766229_98.png 766229\n", + "487978\n", + "../rotated_barcodes/bars/767170_88.png 767170\n", + "489665\n", + "../rotated_barcodes/bars/767650_99.png 767650\n", + "489809\n", + "../rotated_barcodes/bars/768076_40.png 768076\n", + "488588\n", + "../rotated_barcodes/bars/768681_100.png 768681\n", + "488790\n", + "../rotated_barcodes/bars/769258_55.png 769258\n", + "490709\n", + "../rotated_barcodes/bars/771384_101.png 771384\n", + "510516\n", + "../rotated_barcodes/bars/773819_95.png 773819\n", + "511351\n", + "../rotated_barcodes/bars/774581_3.png 774581\n", + "516730\n", + "../rotated_barcodes/bars/77563_53.png 77563\n", + "138743\n", + "../rotated_barcodes/bars/77567_60.png 77567\n", + "138751\n", + "../rotated_barcodes/bars/776566_60.png 776566\n", + "517817\n", + "../rotated_barcodes/bars/777708_102.png 777708\n", + "519900\n", + "../rotated_barcodes/bars/780129_62.png 780129\n", + "514962\n", + "../rotated_barcodes/bars/781437_112.png 781437\n", + "515262\n", + "../rotated_barcodes/bars/784739_35.png 784739\n", + "521875\n", + "../rotated_barcodes/bars/785066_26.png 785066\n", + "521557\n", + "../rotated_barcodes/bars/788159_122.png 788159\n", + "788863\n", + "../rotated_barcodes/bars/790872_103.png 790872\n", + "795300\n", + "../rotated_barcodes/bars/791427_104.png 791427\n", + "795459\n", + "../rotated_barcodes/bars/794159_10.png 794159\n", + "797983\n", + "../rotated_barcodes/bars/795073_52.png 795073\n", + "791234\n", + "../rotated_barcodes/bars/796043_105.png 796043\n", + "793159\n", + "../rotated_barcodes/bars/796155_106.png 796155\n", + "793335\n", + "../rotated_barcodes/bars/796968_93.png 796968\n", + "792084\n", + "../rotated_barcodes/bars/798645_94.png 798645\n", + "794490\n", + "../rotated_barcodes/bars/802074_35.png 802074\n", + "802341\n", + "../rotated_barcodes/bars/803285_70.png 803285\n", + "819946\n", + "../rotated_barcodes/bars/812578_33.png 812578\n", + "825617\n", + "../rotated_barcodes/bars/812916_13.png 812916\n", + "826296\n", + "../rotated_barcodes/bars/817129_38.png 817129\n", + "834518\n", + "../rotated_barcodes/bars/821985_97.png 821985\n", + "804306\n", + "../rotated_barcodes/bars/826240_107.png 826240\n", + "812864\n", + "../rotated_barcodes/bars/831722_26.png 831722\n", + "815317\n", + "../rotated_barcodes/bars/83180_126.png 83180\n", + "166108\n", + "../rotated_barcodes/bars/836147_34.png 836147\n", + "835891\n", + "../rotated_barcodes/bars/836894_59.png 836894\n", + "838189\n", + "../rotated_barcodes/bars/836974_56.png 836974\n", + "838301\n", + "../rotated_barcodes/bars/837963_108.png 837963\n", + "837255\n", + "../rotated_barcodes/bars/845228_108.png 845228\n", + "842332\n", + "../rotated_barcodes/bars/847870_81.png 847870\n", + "843773\n", + "../rotated_barcodes/bars/850150_78.png 850150\n", + "849113\n", + "../rotated_barcodes/bars/851759_127.png 851759\n", + "851743\n", + "../rotated_barcodes/bars/853457_109.png 853457\n", + "920290\n", + "../rotated_barcodes/bars/854261_101.png 854261\n", + "918778\n", + "../rotated_barcodes/bars/85470_76.png 85470\n", + "167661\n", + "../rotated_barcodes/bars/854789_61.png 854789\n", + "919306\n", + "../rotated_barcodes/bars/856653_109.png 856653\n", + "926094\n", + "../rotated_barcodes/bars/859706_104.png 859706\n", + "929077\n", + "../rotated_barcodes/bars/859961_100.png 859961\n", + "929590\n", + "../rotated_barcodes/bars/859980_41.png 859980\n", + "929676\n", + "../rotated_barcodes/bars/865829_112.png 865829\n", + "932122\n", + "../rotated_barcodes/bars/86696_110.png 86696\n", + "172372\n", + "../rotated_barcodes/bars/871471_111.png 871471\n", + "953375\n", + "../rotated_barcodes/bars/873543_82.png 873543\n", + "960651\n", + "../rotated_barcodes/bars/875188_40.png 875188\n", + "959864\n", + "../rotated_barcodes/bars/875443_46.png 875443\n", + "960371\n", + "../rotated_barcodes/bars/877371_65.png 877371\n", + "955191\n", + "../rotated_barcodes/bars/887007_111.png 887007\n", + "935151\n", + "../rotated_barcodes/bars/888605_118.png 888605\n", + "937774\n", + "../rotated_barcodes/bars/89206_14.png 89206\n", + "175289\n", + "../rotated_barcodes/bars/894582_0.png 894582\n", + "940473\n", + "../rotated_barcodes/bars/894859_13.png 894859\n", + "940871\n", + "../rotated_barcodes/bars/896978_71.png 896978\n", + "942049\n", + "../rotated_barcodes/bars/903921_46.png 903921\n", + "968178\n", + "../rotated_barcodes/bars/903934_55.png 903934\n", + "968189\n", + "../rotated_barcodes/bars/906367_89.png 906367\n", + "977087\n", + "../rotated_barcodes/bars/908303_112.png 908303\n", + "977935\n", + "../rotated_barcodes/bars/909886_44.png 909886\n", + "971069\n", + "../rotated_barcodes/bars/914004_113.png 914004\n", + "979368\n", + "../rotated_barcodes/bars/915487_72.png 915487\n", + "980015\n", + "../rotated_barcodes/bars/915835_59.png 915835\n", + "980663\n", + "../rotated_barcodes/bars/916477_114.png 916477\n", + "980990\n", + "../rotated_barcodes/bars/917567_107.png 917567\n", + "852031\n", + "../rotated_barcodes/bars/917867_61.png 917867\n", + "852631\n", + "../rotated_barcodes/bars/920234_52.png 920234\n", + "853333\n", + "../rotated_barcodes/bars/920618_39.png 920618\n", + "855061\n", + "../rotated_barcodes/bars/921443_2.png 921443\n", + "855955\n", + "../rotated_barcodes/bars/922284_81.png 922284\n", + "860508\n", + "../rotated_barcodes/bars/923680_115.png 923680\n", + "861200\n", + "../rotated_barcodes/bars/926999_116.png 926999\n", + "858667\n", + "../rotated_barcodes/bars/927121_117.png 927121\n", + "858722\n", + "../rotated_barcodes/bars/927672_118.png 927672\n", + "858996\n", + "../rotated_barcodes/bars/931401_119.png 931401\n", + "866694\n", + "../rotated_barcodes/bars/933718_120.png 933718\n", + "868265\n", + "../rotated_barcodes/bars/934311_121.png 934311\n", + "885339\n", + "../rotated_barcodes/bars/934533_0.png 934533\n", + "885066\n", + "../rotated_barcodes/bars/941292_122.png 941292\n", + "896220\n", + "../rotated_barcodes/bars/943193_124.png 943193\n", + "891046\n", + "../rotated_barcodes/bars/943662_123.png 943662\n", + "891165\n", + "../rotated_barcodes/bars/947515_32.png 947515\n", + "899639\n", + "../rotated_barcodes/bars/949613_32.png 949613\n", + "900766\n", + "../rotated_barcodes/bars/952345_37.png 952345\n", + "869414\n", + "../rotated_barcodes/bars/955310_124.png 955310\n", + "877405\n", + "../rotated_barcodes/bars/957227_28.png 957227\n", + "878359\n", + "../rotated_barcodes/bars/96736_63.png 96736\n", + "177872\n", + "../rotated_barcodes/bars/971208_120.png 971208\n", + "910020\n", + "../rotated_barcodes/bars/974681_125.png 974681\n", + "913318\n", + "../rotated_barcodes/bars/974748_75.png 974748\n", + "913260\n", + "../rotated_barcodes/bars/975127_42.png 975127\n", + "905771\n", + "../rotated_barcodes/bars/975487_81.png 975487\n", + "905663\n", + "../rotated_barcodes/bars/97565_15.png 97565\n", + "179758\n", + "../rotated_barcodes/bars/983228_126.png 983228\n", + "983164\n", + "../rotated_barcodes/bars/983634_120.png 983634\n", + "983457\n", + "../rotated_barcodes/bars/984099_105.png 984099\n", + "985107\n", + "../rotated_barcodes/bars/987102_26.png 987102\n", + "987117\n", + "../rotated_barcodes/bars/98869_127.png 98869\n", + "147770\n", + "../rotated_barcodes/bars/995537_81.png 995537\n", + "995554\n" + ] + } + ], + "source": [ + "# generate horizontally flipped images\n", + "for path, dec in zip(df[\"path\"], df[\"dec\"]):\n", + " print(path, dec)\n", + " im = Image.open(path)\n", + " im = ImageOps.mirror(im)\n", + " new_code = h_mirror_code(dec)\n", + " print(new_code)\n", + " im.save(\"{}/{}_h_{}.png\".format(OUTPUT_FOLDER, new_code, dec))" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "../rotated_barcodes/bars/1002792_0.png 1002792\n", + "84783\n", + "../rotated_barcodes/bars/1002872_1.png 1002872\n", + "125743\n", + "../rotated_barcodes/bars/1004045_68.png 1004045\n", + "722095\n", + "../rotated_barcodes/bars/1004047_120.png 1004047\n", + "984239\n", + "../rotated_barcodes/bars/1007115_22.png 1007115\n", + "853935\n", + "../rotated_barcodes/bars/1008617_100.png 1008617\n", + "621679\n", + "../rotated_barcodes/bars/1008855_28.png 1008855\n", + "963183\n", + "../rotated_barcodes/bars/1008962_2.png 1008962\n", + "273007\n", + "../rotated_barcodes/bars/1009783_89.png 1009783\n", + "975215\n", + "../rotated_barcodes/bars/1011307_73.png 1011307\n", + "878447\n", + "../rotated_barcodes/bars/101150_71.png 101150\n", + "494872\n", + "../rotated_barcodes/bars/1011796_24.png 1011796\n", + "172271\n", + "../rotated_barcodes/bars/1012500_92.png 1012500\n", + "167151\n", + "../rotated_barcodes/bars/1014147_44.png 1014147\n", + "793071\n", + "../rotated_barcodes/bars/1016272_3.png 1016272\n", + "47135\n", + "../rotated_barcodes/bars/1019981_4.png 1019981\n", + "729247\n", + "../rotated_barcodes/bars/1020151_85.png 1020151\n", + "979103\n", + "../rotated_barcodes/bars/1020477_66.png 1020477\n", + "771231\n", + "../rotated_barcodes/bars/1021722_32.png 1021722\n", + "364191\n", + "../rotated_barcodes/bars/1024768_39.png 1024768\n", + "3167\n", + "../rotated_barcodes/bars/1026078_5.png 1026078\n", + "491871\n", + "../rotated_barcodes/bars/1028139_52.png 1028139\n", + "868575\n", + "../rotated_barcodes/bars/1028152_6.png 1028152\n", + "114911\n", + "../rotated_barcodes/bars/1029930_105.png 1029930\n", + "347871\n", + "../rotated_barcodes/bars/1035909_15.png 1035909\n", + "661311\n", + "../rotated_barcodes/bars/1035941_7.png 1035941\n", + "677695\n", + "../rotated_barcodes/bars/1035978_109.png 1035978\n", + "341823\n", + "../rotated_barcodes/bars/1040774_62.png 1040774\n", + "399487\n", + "../rotated_barcodes/bars/1041429_83.png 1041429\n", + "688767\n", + "../rotated_barcodes/bars/109721_59.png 109721\n", + "627544\n", + "../rotated_barcodes/bars/113886_62.png 113886\n", + "504792\n", + "../rotated_barcodes/bars/115580_3.png 115580\n", + "257080\n", + "../rotated_barcodes/bars/120042_83.png 120042\n", + "357048\n", + "../rotated_barcodes/bars/122735_124.png 122735\n", + "1011640\n", + "../rotated_barcodes/bars/124788_14.png 124788\n", + "192120\n", + "../rotated_barcodes/bars/12587_127.png 12587\n", + "870592\n", + "../rotated_barcodes/bars/126342_51.png 126342\n", + "400248\n", + "../rotated_barcodes/bars/126627_2.png 126627\n", + "808824\n", + "../rotated_barcodes/bars/126888_8.png 126888\n", + "89976\n", + "../rotated_barcodes/bars/130414_9.png 130414\n", + "486392\n", + "../rotated_barcodes/bars/131257_10.png 131257\n", + "643076\n", + "../rotated_barcodes/bars/13253_59.png 13253\n", + "670912\n", + "../rotated_barcodes/bars/135472_11.png 135472\n", + "51332\n", + "../rotated_barcodes/bars/139281_12.png 139281\n", + "557124\n", + "../rotated_barcodes/bars/140809_56.png 140809\n", + "591428\n", + "../rotated_barcodes/bars/142139_13.png 142139\n", + "904516\n", + "../rotated_barcodes/bars/143779_14.png 143779\n", + "809156\n", + "../rotated_barcodes/bars/144008_67.png 144008\n", + "70852\n", + "../rotated_barcodes/bars/144547_20.png 144547\n", + "807620\n", + "../rotated_barcodes/bars/145681_25.png 145681\n", + "559556\n", + "../rotated_barcodes/bars/146199_104.png 146199\n", + "953796\n", + "../rotated_barcodes/bars/147052_15.png 147052\n", + "223172\n", + "../rotated_barcodes/bars/147941_16.png 147941\n", + "686116\n", + "../rotated_barcodes/bars/148374_71.png 148374\n", + "433188\n", + "../rotated_barcodes/bars/148419_17.png 148419\n", + "801828\n", + "../rotated_barcodes/bars/149391_11.png 149391\n", + "990756\n", + "../rotated_barcodes/bars/151253_18.png 151253\n", + "702244\n", + "../rotated_barcodes/bars/15302_19.png 15302\n", + "409024\n", + "../rotated_barcodes/bars/153584_15.png 153584\n", + "65188\n", + "../rotated_barcodes/bars/154141_52.png 154141\n", + "755108\n", + "../rotated_barcodes/bars/155050_108.png 155050\n", + "351140\n", + "../rotated_barcodes/bars/155196_121.png 155196\n", + "247716\n", + "../rotated_barcodes/bars/157572_73.png 157572\n", + "138852\n", + "../rotated_barcodes/bars/159225_69.png 159225\n", + "654180\n", + "../rotated_barcodes/bars/16107_101.png 16107\n", + "882624\n", + "../rotated_barcodes/bars/161487_20.png 161487\n", + "997092\n", + "../rotated_barcodes/bars/162332_82.png 162332\n", + "230884\n", + "../rotated_barcodes/bars/163924_22.png 163924\n", + "172052\n", + "../rotated_barcodes/bars/172939_52.png 172939\n", + "859220\n", + "../rotated_barcodes/bars/173698_80.png 173698\n", + "267860\n", + "../rotated_barcodes/bars/18010_21.png 18010\n", + "370208\n", + "../rotated_barcodes/bars/181531_22.png 181531\n", + "887348\n", + "../rotated_barcodes/bars/185046_99.png 185046\n", + "439476\n", + "../rotated_barcodes/bars/186315_23.png 186315\n", + "868020\n", + "../rotated_barcodes/bars/187453_70.png 187453\n", + "770996\n", + "../rotated_barcodes/bars/190403_65.png 190403\n", + "802420\n", + "../rotated_barcodes/bars/199045_24.png 199045\n", + "661772\n", + "../rotated_barcodes/bars/199198_101.png 199198\n", + "492812\n", + "../rotated_barcodes/bars/20031_25.png 20031\n", + "1034016\n", + "../rotated_barcodes/bars/210504_57.png 210504\n", + "75468\n", + "../rotated_barcodes/bars/210846_113.png 210846\n", + "499404\n", + "../rotated_barcodes/bars/215763_121.png 215763\n", + "832812\n", + "../rotated_barcodes/bars/218132_26.png 218132\n", + "164524\n", + "../rotated_barcodes/bars/221768_52.png 221768\n", + "74860\n", + "../rotated_barcodes/bars/223765_26.png 223765\n", + "689516\n", + "../rotated_barcodes/bars/224264_89.png 224264\n", + "66412\n", + "../rotated_barcodes/bars/229904_24.png 229904\n", + "33820\n", + "../rotated_barcodes/bars/231833_35.png 231833\n", + "629020\n", + "../rotated_barcodes/bars/232737_109.png 232737\n", + "543516\n", + "../rotated_barcodes/bars/233336_61.png 233336\n", + "126748\n", + "../rotated_barcodes/bars/240408_37.png 240408\n", + "101724\n", + "../rotated_barcodes/bars/242463_53.png 242463\n", + "1019100\n", + "../rotated_barcodes/bars/24309_22.png 24309\n", + "718752\n", + "../rotated_barcodes/bars/244938_44.png 244938\n", + "340956\n", + "../rotated_barcodes/bars/245756_37.png 245756\n", + "262108\n", + "../rotated_barcodes/bars/246281_123.png 246281\n", + "590908\n", + "../rotated_barcodes/bars/247226_107.png 247226\n", + "383548\n", + "../rotated_barcodes/bars/248_27.png 248\n", + "126976\n", + "../rotated_barcodes/bars/2506_28.png 2506\n", + "342272\n", + "../rotated_barcodes/bars/251415_29.png 251415\n", + "951996\n", + "../rotated_barcodes/bars/251453_83.png 251453\n", + "771772\n", + "../rotated_barcodes/bars/258898_30.png 258898\n", + "306428\n", + "../rotated_barcodes/bars/259397_31.png 259397\n", + "666364\n", + "../rotated_barcodes/bars/262596_73.png 262596\n", + "145410\n", + "../rotated_barcodes/bars/264960_32.png 264960\n", + "3330\n", + "../rotated_barcodes/bars/265896_69.png 265896\n", + "87810\n", + "../rotated_barcodes/bars/266329_46.png 266329\n", + "630914\n", + "../rotated_barcodes/bars/270635_112.png 270635\n", + "870466\n", + "../rotated_barcodes/bars/273053_5.png 273053\n", + "759106\n", + "../rotated_barcodes/bars/273058_33.png 273058\n", + "283970\n", + "../rotated_barcodes/bars/281278_15.png 281278\n", + "513314\n", + "../rotated_barcodes/bars/284608_112.png 284608\n", + "16034\n", + "../rotated_barcodes/bars/284732_6.png 284732\n", + "246178\n", + "../rotated_barcodes/bars/286167_2.png 286167\n", + "965538\n", + "../rotated_barcodes/bars/288145_100.png 288145\n", + "563810\n", + "../rotated_barcodes/bars/290213_34.png 290213\n", + "678754\n", + "../rotated_barcodes/bars/291654_35.png 291654\n", + "404706\n", + "../rotated_barcodes/bars/292187_124.png 292187\n", + "895714\n", + "../rotated_barcodes/bars/294025_66.png 294025\n", + "594914\n", + "../rotated_barcodes/bars/294663_71.png 294663\n", + "921570\n", + "../rotated_barcodes/bars/295622_109.png 295622\n", + "406546\n", + "../rotated_barcodes/bars/296850_88.png 296850\n", + "302610\n", + "../rotated_barcodes/bars/297119_80.png 297119\n", + "1020178\n", + "../rotated_barcodes/bars/299368_36.png 299368\n", + "92306\n", + "../rotated_barcodes/bars/300079_37.png 300079\n", + "1000082\n", + "../rotated_barcodes/bars/30023_84.png 30023\n", + "928480\n", + "../rotated_barcodes/bars/300568_38.png 300568\n", + "99986\n", + "../rotated_barcodes/bars/301762_5.png 301762\n", + "275858\n", + "../rotated_barcodes/bars/305388_39.png 305388\n", + "225618\n", + "../rotated_barcodes/bars/306918_22.png 306918\n", + "423762\n", + "../rotated_barcodes/bars/31491_40.png 31491\n", + "789984\n", + "../rotated_barcodes/bars/315942_88.png 315942\n", + "410802\n", + "../rotated_barcodes/bars/317498_55.png 317498\n", + "377266\n", + "../rotated_barcodes/bars/325293_40.png 325293\n", + "743154\n", + "../rotated_barcodes/bars/326986_32.png 326986\n", + "338930\n", + "../rotated_barcodes/bars/329008_28.png 329008\n", + "51722\n", + "../rotated_barcodes/bars/329481_89.png 329481\n", + "593418\n", + "../rotated_barcodes/bars/333128_117.png 333128\n", + "76426\n", + "../rotated_barcodes/bars/333461_45.png 333461\n", + "693898\n", + "../rotated_barcodes/bars/333480_41.png 333480\n", + "87690\n", + "../rotated_barcodes/bars/33554_42.png 33554\n", + "298000\n", + "../rotated_barcodes/bars/340162_43.png 340162\n", + "274634\n", + "../rotated_barcodes/bars/341416_24.png 341416\n", + "88778\n", + "../rotated_barcodes/bars/344153_97.png 344153\n", + "630826\n", + "../rotated_barcodes/bars/348751_63.png 348751\n", + "992426\n", + "../rotated_barcodes/bars/355518_108.png 355518\n", + "512874\n", + "../rotated_barcodes/bars/357680_78.png 357680\n", + "51946\n", + "../rotated_barcodes/bars/357744_44.png 357744\n", + "60138\n", + "../rotated_barcodes/bars/360668_45.png 360668\n", + "241690\n", + "../rotated_barcodes/bars/363733_46.png 363733\n", + "701210\n", + "../rotated_barcodes/bars/364158_76.png 364158\n", + "517914\n", + "../rotated_barcodes/bars/364316_118.png 364316\n", + "233242\n", + "../rotated_barcodes/bars/367568_122.png 367568\n", + "48538\n", + "../rotated_barcodes/bars/383191_47.png 383191\n", + "963002\n", + "../rotated_barcodes/bars/383958_46.png 383958\n", + "441786\n", + "../rotated_barcodes/bars/384036_117.png 384036\n", + "148410\n", + "../rotated_barcodes/bars/384486_32.png 384486\n", + "424890\n", + "../rotated_barcodes/bars/386803_120.png 386803\n", + "849530\n", + "../rotated_barcodes/bars/389864_0.png 389864\n", + "95482\n", + "../rotated_barcodes/bars/391006_72.png 391006\n", + "503546\n", + "../rotated_barcodes/bars/39253_124.png 39253\n", + "698768\n", + "../rotated_barcodes/bars/393784_97.png 393784\n", + "115718\n", + "../rotated_barcodes/bars/395243_48.png 395243\n", + "884230\n", + "../rotated_barcodes/bars/395917_56.png 395917\n", + "726278\n", + "../rotated_barcodes/bars/396532_99.png 396532\n", + "193286\n", + "../rotated_barcodes/bars/403583_30.png 403583\n", + "1040710\n", + "../rotated_barcodes/bars/404136_17.png 404136\n", + "87366\n", + "../rotated_barcodes/bars/40834_51.png 40834\n", + "270224\n", + "../rotated_barcodes/bars/412309_49.png 412309\n", + "693542\n", + "../rotated_barcodes/bars/414351_48.png 414351\n", + "988326\n", + "../rotated_barcodes/bars/416041_69.png 416041\n", + "608678\n", + "../rotated_barcodes/bars/416159_50.png 416159\n", + "1022374\n", + "../rotated_barcodes/bars/418033_53.png 418033\n", + "585830\n", + "../rotated_barcodes/bars/419524_13.png 419524\n", + "144998\n", + "../rotated_barcodes/bars/424453_25.png 424453\n", + "656870\n", + "../rotated_barcodes/bars/427187_88.png 427187\n", + "840214\n", + "../rotated_barcodes/bars/431397_51.png 431397\n", + "674454\n", + "../rotated_barcodes/bars/432227_53.png 432227\n", + "811414\n", + "../rotated_barcodes/bars/432242_87.png 432242\n", + "319894\n", + "../rotated_barcodes/bars/432600_52.png 432600\n", + "113046\n", + "../rotated_barcodes/bars/434084_43.png 434084\n", + "155542\n", + "../rotated_barcodes/bars/436168_61.png 436168\n", + "81494\n", + "../rotated_barcodes/bars/441685_49.png 441685\n", + "699350\n", + "../rotated_barcodes/bars/442442_53.png 442442\n", + "335926\n", + "../rotated_barcodes/bars/444775_50.png 444775\n", + "944438\n", + "../rotated_barcodes/bars/448160_54.png 448160\n", + "22198\n", + "../rotated_barcodes/bars/451851_55.png 451851\n", + "854646\n", + "../rotated_barcodes/bars/452150_69.png 452150\n", + "444022\n", + "../rotated_barcodes/bars/453251_56.png 453251\n", + "791926\n", + "../rotated_barcodes/bars/453899_48.png 453899\n", + "854902\n", + "../rotated_barcodes/bars/454470_57.png 454470\n", + "405366\n", + "../rotated_barcodes/bars/456589_123.png 456589\n", + "728822\n", + "../rotated_barcodes/bars/458486_112.png 458486\n", + "456694\n", + "../rotated_barcodes/bars/467236_116.png 467236\n", + "149582\n", + "../rotated_barcodes/bars/467510_51.png 467510\n", + "443470\n", + "../rotated_barcodes/bars/47293_58.png 47293\n", + "774608\n", + "../rotated_barcodes/bars/47761_59.png 47761\n", + "562640\n", + "../rotated_barcodes/bars/478889_91.png 478889\n", + "612142\n", + "../rotated_barcodes/bars/479012_117.png 479012\n", + "151342\n", + "../rotated_barcodes/bars/480074_60.png 480074\n", + "339118\n", + "../rotated_barcodes/bars/482165_125.png 482165\n", + "716206\n", + "../rotated_barcodes/bars/487394_118.png 487394\n", + "294766\n", + "../rotated_barcodes/bars/49071_61.png 49071\n", + "1007568\n", + "../rotated_barcodes/bars/49446_108.png 49446\n", + "411696\n", + "../rotated_barcodes/bars/49770_12.png 49770\n", + "353328\n", + "../rotated_barcodes/bars/498449_98.png 498449\n", + "560542\n", + "../rotated_barcodes/bars/498754_39.png 498754\n", + "271262\n", + "../rotated_barcodes/bars/501067_31.png 501067\n", + "862814\n", + "../rotated_barcodes/bars/501242_124.png 501242\n", + "391774\n", + "../rotated_barcodes/bars/501871_21.png 501871\n", + "1007966\n", + "../rotated_barcodes/bars/501949_62.png 501949\n", + "774494\n", + "../rotated_barcodes/bars/50253_96.png 50253\n", + "729648\n", + "../rotated_barcodes/bars/502690_63.png 502690\n", + "286046\n", + "../rotated_barcodes/bars/505531_101.png 505531\n", + "906974\n", + "../rotated_barcodes/bars/505717_123.png 505717\n", + "716510\n", + "../rotated_barcodes/bars/505824_53.png 505824\n", + "32478\n", + "../rotated_barcodes/bars/508194_64.png 508194\n", + "280638\n", + "../rotated_barcodes/bars/509719_65.png 509719\n", + "953918\n", + "../rotated_barcodes/bars/518458_63.png 518458\n", + "379262\n", + "../rotated_barcodes/bars/521284_120.png 521284\n", + "140030\n", + "../rotated_barcodes/bars/521421_46.png 521421\n", + "733950\n", + "../rotated_barcodes/bars/521815_25.png 521815\n", + "960254\n", + "../rotated_barcodes/bars/522180_22.png 522180\n", + "147198\n", + "../rotated_barcodes/bars/523189_111.png 523189\n", + "712190\n", + "../rotated_barcodes/bars/526161_81.png 526161\n", + "568833\n", + "../rotated_barcodes/bars/526304_66.png 526304\n", + "32257\n", + "../rotated_barcodes/bars/529990_101.png 529990\n", + "403073\n", + "../rotated_barcodes/bars/530532_28.png 530532\n", + "156033\n", + "../rotated_barcodes/bars/533072_116.png 533072\n", + "42049\n", + "../rotated_barcodes/bars/534070_92.png 534070\n", + "443969\n", + "../rotated_barcodes/bars/534330_88.png 534330\n", + "380481\n", + "../rotated_barcodes/bars/537690_43.png 537690\n", + "369345\n", + "../rotated_barcodes/bars/540285_89.png 540285\n", + "780225\n", + "../rotated_barcodes/bars/543488_110.png 543488\n", + "3361\n", + "../rotated_barcodes/bars/54779_52.png 54779\n", + "916144\n", + "../rotated_barcodes/bars/548158_6.png 548158\n", + "510881\n", + "../rotated_barcodes/bars/549069_12.png 549069\n", + "733281\n", + "../rotated_barcodes/bars/550474_62.png 550474\n", + "337505\n", + "../rotated_barcodes/bars/554801_80.png 554801\n", + "577249\n", + "../rotated_barcodes/bars/557114_2.png 557114\n", + "376849\n", + "../rotated_barcodes/bars/558205_38.png 558205\n", + "778769\n", + "../rotated_barcodes/bars/558874_67.png 558874\n", + "364049\n", + "../rotated_barcodes/bars/559328_0.png 559328\n", + "28945\n", + "../rotated_barcodes/bars/559558_68.png 559558\n", + "407825\n", + "../rotated_barcodes/bars/559796_69.png 559796\n", + "185617\n", + "../rotated_barcodes/bars/562075_71.png 562075\n", + "892049\n", + "../rotated_barcodes/bars/564833_33.png 564833\n", + "550801\n", + "../rotated_barcodes/bars/564908_25.png 564908\n", + "219025\n", + "../rotated_barcodes/bars/566777_126.png 566777\n", + "653905\n", + "../rotated_barcodes/bars/567460_64.png 567460\n", + "151889\n", + "../rotated_barcodes/bars/568041_85.png 568041\n", + "619857\n", + "../rotated_barcodes/bars/573241_117.png 573241\n", + "643025\n", + "../rotated_barcodes/bars/576634_122.png 576634\n", + "385841\n", + "../rotated_barcodes/bars/579216_96.png 579216\n", + "38577\n", + "../rotated_barcodes/bars/579606_40.png 579606\n", + "426417\n", + "../rotated_barcodes/bars/580747_71.png 580747\n", + "857009\n", + "../rotated_barcodes/bars/581727_34.png 581727\n", + "1024113\n", + "../rotated_barcodes/bars/582019_107.png 582019\n", + "792689\n", + "../rotated_barcodes/bars/582167_114.png 582167\n", + "951409\n", + "../rotated_barcodes/bars/583494_70.png 583494\n", + "405105\n", + "../rotated_barcodes/bars/585633_12.png 585633\n", + "548721\n", + "../rotated_barcodes/bars/59170_56.png 59170\n", + "282224\n", + "../rotated_barcodes/bars/59603_9.png 59603\n", + "831856\n", + "../rotated_barcodes/bars/596829_77.png 596829\n", + "765321\n", + "../rotated_barcodes/bars/599069_71.png 599069\n", + "754249\n", + "../rotated_barcodes/bars/600235_72.png 600235\n", + "872777\n", + "../rotated_barcodes/bars/603488_73.png 603488\n", + "27337\n", + "../rotated_barcodes/bars/609970_124.png 609970\n", + "317225\n", + "../rotated_barcodes/bars/610706_39.png 610706\n", + "301225\n", + "../rotated_barcodes/bars/610898_74.png 610898\n", + "304297\n", + "../rotated_barcodes/bars/61115_80.png 61115\n", + "907120\n", + "../rotated_barcodes/bars/611988_30.png 611988\n", + "169641\n", + "../rotated_barcodes/bars/613634_109.png 613634\n", + "265129\n", + "../rotated_barcodes/bars/615991_75.png 615991\n", + "968297\n", + "../rotated_barcodes/bars/616158_124.png 616158\n", + "505449\n", + "../rotated_barcodes/bars/619523_123.png 619523\n", + "787177\n", + "../rotated_barcodes/bars/621907_65.png 621907\n", + "830441\n", + "../rotated_barcodes/bars/623463_76.png 623463\n", + "945177\n", + "../rotated_barcodes/bars/627693_2.png 627693\n", + "752793\n", + "../rotated_barcodes/bars/630434_77.png 630434\n", + "284569\n", + "../rotated_barcodes/bars/632878_31.png 632878\n", + "475481\n", + "../rotated_barcodes/bars/634540_19.png 634540\n", + "218969\n", + "../rotated_barcodes/bars/636428_107.png 636428\n", + "198361\n", + "../rotated_barcodes/bars/638290_78.png 638290\n", + "306137\n", + "../rotated_barcodes/bars/640276_98.png 640276\n", + "166457\n", + "../rotated_barcodes/bars/642999_69.png 642999\n", + "974649\n", + "../rotated_barcodes/bars/644815_37.png 644815\n", + "997049\n", + "../rotated_barcodes/bars/646101_35.png 646101\n", + "703929\n", + "../rotated_barcodes/bars/646786_79.png 646786\n", + "268217\n", + "../rotated_barcodes/bars/648736_78.png 648736\n", + "18041\n", + "../rotated_barcodes/bars/653491_80.png 653491\n", + "840185\n", + "../rotated_barcodes/bars/655403_3.png 655403\n", + "868357\n", + "../rotated_barcodes/bars/656505_81.png 656505\n", + "647685\n", + "../rotated_barcodes/bars/66032_82.png 66032\n", + "63496\n", + "../rotated_barcodes/bars/660777_82.png 660777\n", + "608901\n", + "../rotated_barcodes/bars/669157_118.png 669157\n", + "686789\n", + "../rotated_barcodes/bars/672883_6.png 672883\n", + "844325\n", + "../rotated_barcodes/bars/675381_25.png 675381\n", + "706341\n", + "../rotated_barcodes/bars/676428_83.png 676428\n", + "205989\n", + "../rotated_barcodes/bars/682571_43.png 682571\n", + "861541\n", + "../rotated_barcodes/bars/684197_84.png 684197\n", + "676069\n", + "../rotated_barcodes/bars/684270_26.png 684270\n", + "487653\n", + "../rotated_barcodes/bars/68507_85.png 68507\n", + "892168\n", + "../rotated_barcodes/bars/687733_17.png 687733\n", + "714725\n", + "../rotated_barcodes/bars/68810_68.png 68810\n", + "340744\n", + "../rotated_barcodes/bars/688747_50.png 688747\n", + "877589\n", + "../rotated_barcodes/bars/689244_86.png 689244\n", + "238101\n", + "../rotated_barcodes/bars/689480_56.png 689480\n", + "76309\n", + "../rotated_barcodes/bars/692560_82.png 692560\n", + "43157\n", + "../rotated_barcodes/bars/692726_87.png 692726\n", + "456853\n", + "../rotated_barcodes/bars/692768_9.png 692768\n", + "17557\n", + "../rotated_barcodes/bars/696430_99.png 696430\n", + "483413\n", + "../rotated_barcodes/bars/698073_10.png 698073\n", + "636501\n", + "../rotated_barcodes/bars/698408_105.png 698408\n", + "82261\n", + "../rotated_barcodes/bars/702492_88.png 702492\n", + "229845\n", + "../rotated_barcodes/bars/702831_70.png 702831\n", + "1010133\n", + "../rotated_barcodes/bars/704977_116.png 704977\n", + "571445\n", + "../rotated_barcodes/bars/706303_89.png 706303\n", + "1046069\n", + "../rotated_barcodes/bars/70829_19.png 70829\n", + "742024\n", + "../rotated_barcodes/bars/709474_90.png 709474\n", + "289973\n", + "../rotated_barcodes/bars/709541_68.png 709541\n", + "679093\n", + "../rotated_barcodes/bars/710047_91.png 710047\n", + "1022645\n", + "../rotated_barcodes/bars/711747_65.png 711747\n", + "795573\n", + "../rotated_barcodes/bars/713673_92.png 713673\n", + "605301\n", + "../rotated_barcodes/bars/713837_31.png 713837\n", + "746101\n", + "../rotated_barcodes/bars/71578_1.png 71578\n", + "368264\n", + "../rotated_barcodes/bars/718346_93.png 718346\n", + "329461\n", + "../rotated_barcodes/bars/719011_30.png 719011\n", + "807413\n", + "../rotated_barcodes/bars/723407_94.png 723407\n", + "997645\n", + "../rotated_barcodes/bars/724354_98.png 724354\n", + "269069\n", + "../rotated_barcodes/bars/730247_73.png 730247\n", + "922189\n", + "../rotated_barcodes/bars/741130_28.png 741130\n", + "331565\n", + "../rotated_barcodes/bars/744180_71.png 744180\n", + "193965\n", + "../rotated_barcodes/bars/746461_105.png 746461\n", + "769133\n", + "../rotated_barcodes/bars/751772_95.png 751772\n", + "233965\n", + "../rotated_barcodes/bars/752545_85.png 752545\n", + "548333\n", + "../rotated_barcodes/bars/75293_60.png 75293\n", + "755272\n", + "../rotated_barcodes/bars/762095_96.png 762095\n", + "1011805\n", + "../rotated_barcodes/bars/762765_97.png 762765\n", + "728157\n", + "../rotated_barcodes/bars/763550_3.png 763550\n", + "497245\n", + "../rotated_barcodes/bars/763624_6.png 763624\n", + "95837\n", + "../rotated_barcodes/bars/766229_98.png 766229\n", + "690397\n", + "../rotated_barcodes/bars/767170_88.png 767170\n", + "275165\n", + "../rotated_barcodes/bars/767650_99.png 767650\n", + "284381\n", + "../rotated_barcodes/bars/768076_40.png 768076\n", + "205277\n", + "../rotated_barcodes/bars/768681_100.png 768681\n", + "611805\n", + "../rotated_barcodes/bars/769258_55.png 769258\n", + "357341\n", + "../rotated_barcodes/bars/771384_101.png 771384\n", + "117309\n", + "../rotated_barcodes/bars/773819_95.png 773819\n", + "907069\n", + "../rotated_barcodes/bars/774581_3.png 774581\n", + "710845\n", + "../rotated_barcodes/bars/77563_53.png 77563\n", + "915272\n", + "../rotated_barcodes/bars/77567_60.png 77567\n", + "1046344\n", + "../rotated_barcodes/bars/776566_60.png 776566\n", + "453053\n", + "../rotated_barcodes/bars/777708_102.png 777708\n", + "228285\n", + "../rotated_barcodes/bars/780129_62.png 780129\n", + "552573\n", + "../rotated_barcodes/bars/781437_112.png 781437\n", + "779133\n", + "../rotated_barcodes/bars/784739_35.png 784739\n", + "813565\n", + "../rotated_barcodes/bars/785066_26.png 785066\n", + "349693\n", + "../rotated_barcodes/bars/788159_122.png 788159\n", + "1037827\n", + "../rotated_barcodes/bars/790872_103.png 790872\n", + "108675\n", + "../rotated_barcodes/bars/791427_104.png 791427\n", + "793731\n", + "../rotated_barcodes/bars/794159_10.png 794159\n", + "1001347\n", + "../rotated_barcodes/bars/795073_52.png 795073\n", + "538691\n", + "../rotated_barcodes/bars/796043_105.png 796043\n", + "858691\n", + "../rotated_barcodes/bars/796155_106.png 796155\n", + "916035\n", + "../rotated_barcodes/bars/796968_93.png 796968\n", + "84291\n", + "../rotated_barcodes/bars/798645_94.png 798645\n", + "712515\n", + "../rotated_barcodes/bars/802074_35.png 802074\n", + "363459\n", + "../rotated_barcodes/bars/803285_70.png 803285\n", + "702499\n", + "../rotated_barcodes/bars/812578_33.png 812578\n", + "280163\n", + "../rotated_barcodes/bars/812916_13.png 812916\n", + "192099\n", + "../rotated_barcodes/bars/817129_38.png 817129\n", + "622307\n", + "../rotated_barcodes/bars/821985_97.png 821985\n", + "554259\n", + "../rotated_barcodes/bars/826240_107.png 826240\n", + "7571\n", + "../rotated_barcodes/bars/831722_26.png 831722\n", + "356563\n", + "../rotated_barcodes/bars/83180_126.png 83180\n", + "225832\n", + "../rotated_barcodes/bars/836147_34.png 836147\n", + "836659\n", + "../rotated_barcodes/bars/836894_59.png 836894\n", + "494131\n", + "../rotated_barcodes/bars/836974_56.png 836974\n", + "485939\n", + "../rotated_barcodes/bars/837963_108.png 837963\n", + "862515\n", + "../rotated_barcodes/bars/845228_108.png 845228\n", + "219763\n", + "../rotated_barcodes/bars/847870_81.png 847870\n", + "524147\n", + "../rotated_barcodes/bars/850150_78.png 850150\n", + "422387\n", + "../rotated_barcodes/bars/851759_127.png 851759\n", + "1003507\n", + "../rotated_barcodes/bars/853457_109.png 853457\n", + "571915\n", + "../rotated_barcodes/bars/854261_101.png 854261\n", + "717067\n", + "../rotated_barcodes/bars/85470_76.png 85470\n", + "506664\n", + "../rotated_barcodes/bars/854789_61.png 854789\n", + "658699\n", + "../rotated_barcodes/bars/856653_109.png 856653\n", + "730251\n", + "../rotated_barcodes/bars/859706_104.png 859706\n", + "378763\n", + "../rotated_barcodes/bars/859961_100.png 859961\n", + "642955\n", + "../rotated_barcodes/bars/859980_41.png 859980\n", + "208779\n", + "../rotated_barcodes/bars/865829_112.png 865829\n", + "673483\n", + "../rotated_barcodes/bars/86696_110.png 86696\n", + "87208\n", + "../rotated_barcodes/bars/871471_111.png 871471\n", + "1000235\n", + "../rotated_barcodes/bars/873543_82.png 873543\n", + "926379\n", + "../rotated_barcodes/bars/875188_40.png 875188\n", + "185771\n", + "../rotated_barcodes/bars/875443_46.png 875443\n", + "843179\n", + "../rotated_barcodes/bars/877371_65.png 877371\n", + "904299\n", + "../rotated_barcodes/bars/887007_111.png 887007\n", + "1028379\n", + "../rotated_barcodes/bars/888605_118.png 888605\n", + "757531\n", + "../rotated_barcodes/bars/89206_14.png 89206\n", + "451496\n", + "../rotated_barcodes/bars/894582_0.png 894582\n", + "452187\n", + "../rotated_barcodes/bars/894859_13.png 894859\n", + "859739\n", + "../rotated_barcodes/bars/896978_71.png 896978\n", + "311131\n", + "../rotated_barcodes/bars/903921_46.png 903921\n", + "587067\n", + "../rotated_barcodes/bars/903934_55.png 903934\n", + "521531\n", + "../rotated_barcodes/bars/906367_89.png 906367\n", + "1041083\n", + "../rotated_barcodes/bars/908303_112.png 908303\n", + "983995\n", + "../rotated_barcodes/bars/909886_44.png 909886\n", + "509051\n", + "../rotated_barcodes/bars/914004_113.png 914004\n", + "173307\n", + "../rotated_barcodes/bars/915487_72.png 915487\n", + "1016315\n", + "../rotated_barcodes/bars/915835_59.png 915835\n", + "911867\n", + "../rotated_barcodes/bars/916477_114.png 916477\n", + "785915\n", + "../rotated_barcodes/bars/917567_107.png 917567\n", + "1032199\n", + "../rotated_barcodes/bars/917867_61.png 917867\n", + "878599\n", + "../rotated_barcodes/bars/920234_52.png 920234\n", + "349447\n", + "../rotated_barcodes/bars/920618_39.png 920618\n", + "344839\n", + "../rotated_barcodes/bars/921443_2.png 921443\n", + "814855\n", + "../rotated_barcodes/bars/922284_81.png 922284\n", + "218247\n", + "../rotated_barcodes/bars/923680_115.png 923680\n", + "16775\n", + "../rotated_barcodes/bars/926999_116.png 926999\n", + "952903\n", + "../rotated_barcodes/bars/927121_117.png 927121\n", + "563783\n", + "../rotated_barcodes/bars/927672_118.png 927672\n", + "122439\n", + "../rotated_barcodes/bars/931401_119.png 931401\n", + "599751\n", + "../rotated_barcodes/bars/933718_120.png 933718\n", + "438215\n", + "../rotated_barcodes/bars/934311_121.png 934311\n", + "940071\n", + "../rotated_barcodes/bars/934533_0.png 934533\n", + "660519\n", + "../rotated_barcodes/bars/941292_122.png 941292\n", + "226215\n", + "../rotated_barcodes/bars/943193_124.png 943193\n", + "631399\n", + "../rotated_barcodes/bars/943662_123.png 943662\n", + "476775\n", + "../rotated_barcodes/bars/947515_32.png 947515\n", + "903911\n", + "../rotated_barcodes/bars/949613_32.png 949613\n", + "748519\n", + "../rotated_barcodes/bars/952345_37.png 952345\n", + "622871\n", + "../rotated_barcodes/bars/955310_124.png 955310\n", + "482455\n", + "../rotated_barcodes/bars/957227_28.png 957227\n", + "871831\n", + "../rotated_barcodes/bars/96736_63.png 96736\n", + "31208\n", + "../rotated_barcodes/bars/971208_120.png 971208\n", + "80055\n", + "../rotated_barcodes/bars/974681_125.png 974681\n", + "634807\n", + "../rotated_barcodes/bars/974748_75.png 974748\n", + "237495\n", + "../rotated_barcodes/bars/975127_42.png 975127\n", + "952439\n", + "../rotated_barcodes/bars/975487_81.png 975487\n", + "1041527\n", + "../rotated_barcodes/bars/97565_15.png 97565\n", + "756712\n", + "../rotated_barcodes/bars/983228_126.png 983228\n", + "249871\n", + "../rotated_barcodes/bars/983634_120.png 983634\n", + "304143\n", + "../rotated_barcodes/bars/984099_105.png 984099\n", + "803343\n", + "../rotated_barcodes/bars/987102_26.png 987102\n", + "507663\n", + "../rotated_barcodes/bars/98869_127.png 98869\n", + "705560\n", + "../rotated_barcodes/bars/995537_81.png 995537\n", + "569551\n" + ] + } + ], + "source": [ + "# generate vertically flipped images\n", + "for path, dec in zip(df[\"path\"], df[\"dec\"]):\n", + " print(path, dec)\n", + " im = Image.open(path)\n", + " im = ImageOps.flip(im)\n", + " new_code = v_mirror_code(dec)\n", + " print(new_code)\n", + " im.save(\"{}/{}_v_{}.png\".format(OUTPUT_FOLDER, new_code, dec))" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "../rotated_barcodes/bars/1002792_0.png 1002792\n", + "165663\n", + "../rotated_barcodes/bars/1002872_1.png 1002872\n", + "186143\n", + "../rotated_barcodes/bars/1004045_68.png 1004045\n", + "460895\n", + "../rotated_barcodes/bars/1004047_120.png 1004047\n", + "985183\n", + "../rotated_barcodes/bars/1007115_22.png 1007115\n", + "920415\n", + "../rotated_barcodes/bars/1008617_100.png 1008617\n", + "441503\n", + "../rotated_barcodes/bars/1008855_28.png 1008855\n", + "881055\n", + "../rotated_barcodes/bars/1008962_2.png 1008962\n", + "529823\n", + "../rotated_barcodes/bars/1009783_89.png 1009783\n", + "905887\n", + "../rotated_barcodes/bars/1011307_73.png 1011307\n", + "957343\n", + "../rotated_barcodes/bars/101150_71.png 101150\n", + "740900\n", + "../rotated_barcodes/bars/1011796_24.png 1011796\n", + "86239\n", + "../rotated_barcodes/bars/1012500_92.png 1012500\n", + "85215\n", + "../rotated_barcodes/bars/1014147_44.png 1014147\n", + "796383\n", + "../rotated_barcodes/bars/1016272_3.png 1016272\n", + "29743\n", + "../rotated_barcodes/bars/1019981_4.png 1019981\n", + "462959\n", + "../rotated_barcodes/bars/1020151_85.png 1020151\n", + "913519\n", + "../rotated_barcodes/bars/1020477_66.png 1020477\n", + "510063\n", + "../rotated_barcodes/bars/1021722_32.png 1021722\n", + "675183\n", + "../rotated_barcodes/bars/1024768_39.png 1024768\n", + "3247\n", + "../rotated_barcodes/bars/1026078_5.png 1026078\n", + "737967\n", + "../rotated_barcodes/bars/1028139_52.png 1028139\n", + "950511\n", + "../rotated_barcodes/bars/1028152_6.png 1028152\n", + "180463\n", + "../rotated_barcodes/bars/1029930_105.png 1029930\n", + "691695\n", + "../rotated_barcodes/bars/1035909_15.png 1035909\n", + "338751\n", + "../rotated_barcodes/bars/1035941_7.png 1035941\n", + "371519\n", + "../rotated_barcodes/bars/1035978_109.png 1035978\n", + "670527\n", + "../rotated_barcodes/bars/1040774_62.png 1040774\n", + "599231\n", + "../rotated_barcodes/bars/1041429_83.png 1041429\n", + "344511\n", + "../rotated_barcodes/bars/109721_59.png 109721\n", + "418724\n", + "../rotated_barcodes/bars/113886_62.png 113886\n", + "750564\n", + "../rotated_barcodes/bars/115580_3.png 115580\n", + "252980\n", + "../rotated_barcodes/bars/120042_83.png 120042\n", + "700788\n", + "../rotated_barcodes/bars/122735_124.png 122735\n", + "1023860\n", + "../rotated_barcodes/bars/124788_14.png 124788\n", + "122292\n", + "../rotated_barcodes/bars/12587_127.png 12587\n", + "951488\n", + "../rotated_barcodes/bars/126342_51.png 126342\n", + "599988\n", + "../rotated_barcodes/bars/126627_2.png 126627\n", + "830388\n", + "../rotated_barcodes/bars/126888_8.png 126888\n", + "176052\n", + "../rotated_barcodes/bars/130414_9.png 130414\n", + "759796\n", + "../rotated_barcodes/bars/131257_10.png 131257\n", + "450568\n", + "../rotated_barcodes/bars/13253_59.png 13253\n", + "343232\n", + "../rotated_barcodes/bars/135472_11.png 135472\n", + "50248\n", + "../rotated_barcodes/bars/139281_12.png 139281\n", + "278664\n", + "../rotated_barcodes/bars/140809_56.png 140809\n", + "395656\n", + "../rotated_barcodes/bars/142139_13.png 142139\n", + "970376\n", + "../rotated_barcodes/bars/143779_14.png 143779\n", + "828616\n", + "../rotated_barcodes/bars/144008_67.png 144008\n", + "141512\n", + "../rotated_barcodes/bars/144547_20.png 144547\n", + "827848\n", + "../rotated_barcodes/bars/145681_25.png 145681\n", + "280264\n", + "../rotated_barcodes/bars/146199_104.png 146199\n", + "872136\n", + "../rotated_barcodes/bars/147052_15.png 147052\n", + "236488\n", + "../rotated_barcodes/bars/147941_16.png 147941\n", + "373784\n", + "../rotated_barcodes/bars/148374_71.png 148374\n", + "617496\n", + "../rotated_barcodes/bars/148419_17.png 148419\n", + "801816\n", + "../rotated_barcodes/bars/149391_11.png 149391\n", + "994584\n", + "../rotated_barcodes/bars/151253_18.png 151253\n", + "359192\n", + "../rotated_barcodes/bars/15302_19.png 15302\n", + "605888\n", + "../rotated_barcodes/bars/153584_15.png 153584\n", + "64856\n", + "../rotated_barcodes/bars/154141_52.png 154141\n", + "477784\n", + "../rotated_barcodes/bars/155050_108.png 155050\n", + "698200\n", + "../rotated_barcodes/bars/155196_121.png 155196\n", + "248664\n", + "../rotated_barcodes/bars/157572_73.png 157572\n", + "77208\n", + "../rotated_barcodes/bars/159225_69.png 159225\n", + "456600\n", + "../rotated_barcodes/bars/16107_101.png 16107\n", + "965568\n", + "../rotated_barcodes/bars/161487_20.png 161487\n", + "997848\n", + "../rotated_barcodes/bars/162332_82.png 162332\n", + "215768\n", + "../rotated_barcodes/bars/163924_22.png 163924\n", + "86056\n", + "../rotated_barcodes/bars/172939_52.png 172939\n", + "928936\n", + "../rotated_barcodes/bars/173698_80.png 173698\n", + "534952\n", + "../rotated_barcodes/bars/18010_21.png 18010\n", + "678160\n", + "../rotated_barcodes/bars/181531_22.png 181531\n", + "935224\n", + "../rotated_barcodes/bars/185046_99.png 185046\n", + "620664\n", + "../rotated_barcodes/bars/186315_23.png 186315\n", + "933240\n", + "../rotated_barcodes/bars/187453_70.png 187453\n", + "508792\n", + "../rotated_barcodes/bars/190403_65.png 190403\n", + "802232\n", + "../rotated_barcodes/bars/199045_24.png 199045\n", + "337420\n", + "../rotated_barcodes/bars/199198_101.png 199198\n", + "739852\n", + "../rotated_barcodes/bars/20031_25.png 20031\n", + "1035024\n", + "../rotated_barcodes/bars/210504_57.png 210504\n", + "137676\n", + "../rotated_barcodes/bars/210846_113.png 210846\n", + "749004\n", + "../rotated_barcodes/bars/215763_121.png 215763\n", + "817692\n", + "../rotated_barcodes/bars/218132_26.png 218132\n", + "82268\n", + "../rotated_barcodes/bars/221768_52.png 221768\n", + "137372\n", + "../rotated_barcodes/bars/223765_26.png 223765\n", + "346780\n", + "../rotated_barcodes/bars/224264_89.png 224264\n", + "131996\n", + "../rotated_barcodes/bars/229904_24.png 229904\n", + "18476\n", + "../rotated_barcodes/bars/231833_35.png 231833\n", + "419372\n", + "../rotated_barcodes/bars/232737_109.png 232737\n", + "296748\n", + "../rotated_barcodes/bars/233336_61.png 233336\n", + "188204\n", + "../rotated_barcodes/bars/240408_37.png 240408\n", + "151212\n", + "../rotated_barcodes/bars/242463_53.png 242463\n", + "1002732\n", + "../rotated_barcodes/bars/24309_22.png 24309\n", + "392016\n", + "../rotated_barcodes/bars/244938_44.png 244938\n", + "668652\n", + "../rotated_barcodes/bars/245756_37.png 245756\n", + "262124\n", + "../rotated_barcodes/bars/246281_123.png 246281\n", + "395324\n", + "../rotated_barcodes/bars/247226_107.png 247226\n", + "714044\n", + "../rotated_barcodes/bars/248_27.png 248\n", + "192512\n", + "../rotated_barcodes/bars/2506_28.png 2506\n", + "669184\n", + "../rotated_barcodes/bars/251415_29.png 251415\n", + "870780\n", + "../rotated_barcodes/bars/251453_83.png 251453\n", + "510332\n", + "../rotated_barcodes/bars/258898_30.png 258898\n", + "548092\n", + "../rotated_barcodes/bars/259397_31.png 259397\n", + "333308\n", + "../rotated_barcodes/bars/262596_73.png 262596\n", + "78849\n", + "../rotated_barcodes/bars/264960_32.png 264960\n", + "3585\n", + "../rotated_barcodes/bars/265896_69.png 265896\n", + "174849\n", + "../rotated_barcodes/bars/266329_46.png 266329\n", + "413761\n", + "../rotated_barcodes/bars/270635_112.png 270635\n", + "951425\n", + "../rotated_barcodes/bars/273053_5.png 273053\n", + "486017\n", + "../rotated_barcodes/bars/273058_33.png 273058\n", + "567937\n", + "../rotated_barcodes/bars/281278_15.png 281278\n", + "780817\n", + "../rotated_barcodes/bars/284608_112.png 284608\n", + "15697\n", + "../rotated_barcodes/bars/284732_6.png 284732\n", + "246353\n", + "../rotated_barcodes/bars/286167_2.png 286167\n", + "882513\n", + "../rotated_barcodes/bars/288145_100.png 288145\n", + "288145\n", + "../rotated_barcodes/bars/290213_34.png 290213\n", + "370577\n", + "../rotated_barcodes/bars/291654_35.png 291654\n", + "597201\n", + "../rotated_barcodes/bars/292187_124.png 292187\n", + "939473\n", + "../rotated_barcodes/bars/294025_66.png 294025\n", + "402385\n", + "../rotated_barcodes/bars/294663_71.png 294663\n", + "856017\n", + "../rotated_barcodes/bars/295622_109.png 295622\n", + "604193\n", + "../rotated_barcodes/bars/296850_88.png 296850\n", + "552225\n", + "../rotated_barcodes/bars/297119_80.png 297119\n", + "1008161\n", + "../rotated_barcodes/bars/299368_36.png 299368\n", + "169057\n", + "../rotated_barcodes/bars/300079_37.png 300079\n", + "1016161\n", + "../rotated_barcodes/bars/30023_84.png 30023\n", + "857552\n", + "../rotated_barcodes/bars/300568_38.png 300568\n", + "149857\n", + "../rotated_barcodes/bars/301762_5.png 301762\n", + "539233\n", + "../rotated_barcodes/bars/305388_39.png 305388\n", + "242337\n", + "../rotated_barcodes/bars/306918_22.png 306918\n", + "637857\n", + "../rotated_barcodes/bars/31491_40.png 31491\n", + "790224\n", + "../rotated_barcodes/bars/315942_88.png 315942\n", + "624753\n", + "../rotated_barcodes/bars/317498_55.png 317498\n", + "705137\n", + "../rotated_barcodes/bars/325293_40.png 325293\n", + "502257\n", + "../rotated_barcodes/bars/326986_32.png 326986\n", + "661489\n", + "../rotated_barcodes/bars/329008_28.png 329008\n", + "50437\n", + "../rotated_barcodes/bars/329481_89.png 329481\n", + "396549\n", + "../rotated_barcodes/bars/333128_117.png 333128\n", + "136517\n", + "../rotated_barcodes/bars/333461_45.png 333461\n", + "354629\n", + "../rotated_barcodes/bars/333480_41.png 333480\n", + "174405\n", + "../rotated_barcodes/bars/33554_42.png 33554\n", + "543776\n", + "../rotated_barcodes/bars/340162_43.png 340162\n", + "536773\n", + "../rotated_barcodes/bars/341416_24.png 341416\n", + "173509\n", + "../rotated_barcodes/bars/344153_97.png 344153\n", + "413717\n", + "../rotated_barcodes/bars/348751_63.png 348751\n", + "989269\n", + "../rotated_barcodes/bars/355518_108.png 355518\n", + "779157\n", + "../rotated_barcodes/bars/357680_78.png 357680\n", + "50645\n", + "../rotated_barcodes/bars/357744_44.png 357744\n", + "54741\n", + "../rotated_barcodes/bars/360668_45.png 360668\n", + "225317\n", + "../rotated_barcodes/bars/363733_46.png 363733\n", + "357157\n", + "../rotated_barcodes/bars/364158_76.png 364158\n", + "776997\n", + "../rotated_barcodes/bars/364316_118.png 364316\n", + "216869\n", + "../rotated_barcodes/bars/367568_122.png 367568\n", + "32357\n", + "../rotated_barcodes/bars/383191_47.png 383191\n", + "881269\n", + "../rotated_barcodes/bars/383958_46.png 383958\n", + "622197\n", + "../rotated_barcodes/bars/384036_117.png 384036\n", + "99189\n", + "../rotated_barcodes/bars/384486_32.png 384486\n", + "636789\n", + "../rotated_barcodes/bars/386803_120.png 386803\n", + "850357\n", + "../rotated_barcodes/bars/389864_0.png 389864\n", + "178421\n", + "../rotated_barcodes/bars/391006_72.png 391006\n", + "744949\n", + "../rotated_barcodes/bars/39253_124.png 39253\n", + "349792\n", + "../rotated_barcodes/bars/393784_97.png 393784\n", + "182281\n", + "../rotated_barcodes/bars/395243_48.png 395243\n", + "965897\n", + "../rotated_barcodes/bars/395917_56.png 395917\n", + "469513\n", + "../rotated_barcodes/bars/396532_99.png 396532\n", + "127753\n", + "../rotated_barcodes/bars/403583_30.png 403583\n", + "1036937\n", + "../rotated_barcodes/bars/404136_17.png 404136\n", + "174729\n", + "../rotated_barcodes/bars/40834_51.png 40834\n", + "536416\n", + "../rotated_barcodes/bars/412309_49.png 412309\n", + "354841\n", + "../rotated_barcodes/bars/414351_48.png 414351\n", + "993369\n", + "../rotated_barcodes/bars/416041_69.png 416041\n", + "427609\n", + "../rotated_barcodes/bars/416159_50.png 416159\n", + "1009241\n", + "../rotated_barcodes/bars/418033_53.png 418033\n", + "323737\n", + "../rotated_barcodes/bars/419524_13.png 419524\n", + "80281\n", + "../rotated_barcodes/bars/424453_25.png 424453\n", + "330457\n", + "../rotated_barcodes/bars/427187_88.png 427187\n", + "844073\n", + "../rotated_barcodes/bars/431397_51.png 431397\n", + "361833\n", + "../rotated_barcodes/bars/432227_53.png 432227\n", + "823913\n", + "../rotated_barcodes/bars/432242_87.png 432242\n", + "578153\n", + "../rotated_barcodes/bars/432600_52.png 432600\n", + "161385\n", + "../rotated_barcodes/bars/434084_43.png 434084\n", + "110441\n", + "../rotated_barcodes/bars/436168_61.png 436168\n", + "146857\n", + "../rotated_barcodes/bars/441685_49.png 441685\n", + "350185\n", + "../rotated_barcodes/bars/442442_53.png 442442\n", + "659513\n", + "../rotated_barcodes/bars/444775_50.png 444775\n", + "890425\n", + "../rotated_barcodes/bars/448160_54.png 448160\n", + "43385\n", + "../rotated_barcodes/bars/451851_55.png 451851\n", + "918969\n", + "../rotated_barcodes/bars/452150_69.png 452150\n", + "641465\n", + "../rotated_barcodes/bars/453251_56.png 453251\n", + "797369\n", + "../rotated_barcodes/bars/453899_48.png 453899\n", + "919481\n", + "../rotated_barcodes/bars/454470_57.png 454470\n", + "597945\n", + "../rotated_barcodes/bars/456589_123.png 456589\n", + "470521\n", + "../rotated_barcodes/bars/458486_112.png 458486\n", + "654329\n", + "../rotated_barcodes/bars/467236_116.png 467236\n", + "99469\n", + "../rotated_barcodes/bars/467510_51.png 467510\n", + "641165\n", + "../rotated_barcodes/bars/47293_58.png 47293\n", + "516832\n", + "../rotated_barcodes/bars/47761_59.png 47761\n", + "289504\n", + "../rotated_barcodes/bars/478889_91.png 478889\n", + "437021\n", + "../rotated_barcodes/bars/479012_117.png 479012\n", + "102173\n", + "../rotated_barcodes/bars/480074_60.png 480074\n", + "662621\n", + "../rotated_barcodes/bars/482165_125.png 482165\n", + "384605\n", + "../rotated_barcodes/bars/487394_118.png 487394\n", + "573341\n", + "../rotated_barcodes/bars/49071_61.png 49071\n", + "1028064\n", + "../rotated_barcodes/bars/49446_108.png 49446\n", + "623664\n", + "../rotated_barcodes/bars/49770_12.png 49770\n", + "694320\n", + "../rotated_barcodes/bars/498449_98.png 498449\n", + "282221\n", + "../rotated_barcodes/bars/498754_39.png 498754\n", + "529261\n", + "../rotated_barcodes/bars/501067_31.png 501067\n", + "923053\n", + "../rotated_barcodes/bars/501242_124.png 501242\n", + "718253\n", + "../rotated_barcodes/bars/501871_21.png 501871\n", + "1020589\n", + "../rotated_barcodes/bars/501949_62.png 501949\n", + "516781\n", + "../rotated_barcodes/bars/50253_96.png 50253\n", + "463152\n", + "../rotated_barcodes/bars/502690_63.png 502690\n", + "569005\n", + "../rotated_barcodes/bars/505531_101.png 505531\n", + "977389\n", + "../rotated_barcodes/bars/505717_123.png 505717\n", + "384493\n", + "../rotated_barcodes/bars/505824_53.png 505824\n", + "48621\n", + "../rotated_barcodes/bars/508194_64.png 508194\n", + "558141\n", + "../rotated_barcodes/bars/509719_65.png 509719\n", + "871741\n", + "../rotated_barcodes/bars/518458_63.png 518458\n", + "706237\n", + "../rotated_barcodes/bars/521284_120.png 521284\n", + "70141\n", + "../rotated_barcodes/bars/521421_46.png 521421\n", + "471549\n", + "../rotated_barcodes/bars/521815_25.png 521815\n", + "875005\n", + "../rotated_barcodes/bars/522180_22.png 522180\n", + "81405\n", + "../rotated_barcodes/bars/523189_111.png 523189\n", + "388861\n", + "../rotated_barcodes/bars/526161_81.png 526161\n", + "285954\n", + "../rotated_barcodes/bars/526304_66.png 526304\n", + "48386\n", + "../rotated_barcodes/bars/529990_101.png 529990\n", + "596290\n", + "../rotated_barcodes/bars/530532_28.png 530532\n", + "102978\n", + "../rotated_barcodes/bars/533072_116.png 533072\n", + "22658\n", + "../rotated_barcodes/bars/534070_92.png 534070\n", + "641410\n", + "../rotated_barcodes/bars/534330_88.png 534330\n", + "707970\n", + "../rotated_barcodes/bars/537690_43.png 537690\n", + "676290\n", + "../rotated_barcodes/bars/540285_89.png 540285\n", + "515010\n", + "../rotated_barcodes/bars/543488_110.png 543488\n", + "3602\n", + "../rotated_barcodes/bars/54779_52.png 54779\n", + "980336\n", + "../rotated_barcodes/bars/548158_6.png 548158\n", + "771922\n", + "../rotated_barcodes/bars/549069_12.png 549069\n", + "471186\n", + "../rotated_barcodes/bars/550474_62.png 550474\n", + "661906\n", + "../rotated_barcodes/bars/554801_80.png 554801\n", + "314834\n", + "../rotated_barcodes/bars/557114_2.png 557114\n", + "704546\n", + "../rotated_barcodes/bars/558205_38.png 558205\n", + "512290\n", + "../rotated_barcodes/bars/558874_67.png 558874\n", + "675106\n", + "../rotated_barcodes/bars/559328_0.png 559328\n", + "45602\n", + "../rotated_barcodes/bars/559558_68.png 559558\n", + "603682\n", + "../rotated_barcodes/bars/559796_69.png 559796\n", + "125474\n", + "../rotated_barcodes/bars/562075_71.png 562075\n", + "945250\n", + "../rotated_barcodes/bars/564833_33.png 564833\n", + "301922\n", + "../rotated_barcodes/bars/564908_25.png 564908\n", + "240482\n", + "../rotated_barcodes/bars/566777_126.png 566777\n", + "456098\n", + "../rotated_barcodes/bars/567460_64.png 567460\n", + "107170\n", + "../rotated_barcodes/bars/568041_85.png 568041\n", + "440994\n", + "../rotated_barcodes/bars/573241_117.png 573241\n", + "446434\n", + "../rotated_barcodes/bars/576634_122.png 576634\n", + "709426\n", + "../rotated_barcodes/bars/579216_96.png 579216\n", + "26994\n", + "../rotated_barcodes/bars/579606_40.png 579606\n", + "606834\n", + "../rotated_barcodes/bars/580747_71.png 580747\n", + "926578\n", + "../rotated_barcodes/bars/581727_34.png 581727\n", + "1003698\n", + "../rotated_barcodes/bars/582019_107.png 582019\n", + "795826\n", + "../rotated_barcodes/bars/582167_114.png 582167\n", + "870578\n", + "../rotated_barcodes/bars/583494_70.png 583494\n", + "597426\n", + "../rotated_barcodes/bars/585633_12.png 585633\n", + "307122\n", + "../rotated_barcodes/bars/59170_56.png 59170\n", + "560560\n", + "../rotated_barcodes/bars/59603_9.png 59603\n", + "815792\n", + "../rotated_barcodes/bars/596829_77.png 596829\n", + "482886\n", + "../rotated_barcodes/bars/599069_71.png 599069\n", + "475526\n", + "../rotated_barcodes/bars/600235_72.png 600235\n", + "959110\n", + "../rotated_barcodes/bars/603488_73.png 603488\n", + "38342\n", + "../rotated_barcodes/bars/609970_124.png 609970\n", + "584470\n", + "../rotated_barcodes/bars/610706_39.png 610706\n", + "549974\n", + "../rotated_barcodes/bars/610898_74.png 610898\n", + "546902\n", + "../rotated_barcodes/bars/61115_80.png 61115\n", + "977840\n", + "../rotated_barcodes/bars/611988_30.png 611988\n", + "92502\n", + "../rotated_barcodes/bars/613634_109.png 613634\n", + "526166\n", + "../rotated_barcodes/bars/615991_75.png 615991\n", + "903574\n", + "../rotated_barcodes/bars/616158_124.png 616158\n", + "752022\n", + "../rotated_barcodes/bars/619523_123.png 619523\n", + "786902\n", + "../rotated_barcodes/bars/621907_65.png 621907\n", + "808918\n", + "../rotated_barcodes/bars/623463_76.png 623463\n", + "891942\n", + "../rotated_barcodes/bars/627693_2.png 627693\n", + "506982\n", + "../rotated_barcodes/bars/630434_77.png 630434\n", + "568166\n", + "../rotated_barcodes/bars/632878_31.png 632878\n", + "754342\n", + "../rotated_barcodes/bars/634540_19.png 634540\n", + "240550\n", + "../rotated_barcodes/bars/636428_107.png 636428\n", + "199142\n", + "../rotated_barcodes/bars/638290_78.png 638290\n", + "546790\n", + "../rotated_barcodes/bars/640276_98.png 640276\n", + "83254\n", + "../rotated_barcodes/bars/642999_69.png 642999\n", + "913206\n", + "../rotated_barcodes/bars/644815_37.png 644815\n", + "997750\n", + "../rotated_barcodes/bars/646101_35.png 646101\n", + "360054\n", + "../rotated_barcodes/bars/646786_79.png 646786\n", + "535414\n", + "../rotated_barcodes/bars/648736_78.png 648736\n", + "35254\n", + "../rotated_barcodes/bars/653491_80.png 653491\n", + "844534\n", + "../rotated_barcodes/bars/655403_3.png 655403\n", + "950282\n", + "../rotated_barcodes/bars/656505_81.png 656505\n", + "446730\n", + "../rotated_barcodes/bars/66032_82.png 66032\n", + "62468\n", + "../rotated_barcodes/bars/660777_82.png 660777\n", + "427338\n", + "../rotated_barcodes/bars/669157_118.png 669157\n", + "374218\n", + "../rotated_barcodes/bars/672883_6.png 672883\n", + "839962\n", + "../rotated_barcodes/bars/675381_25.png 675381\n", + "379674\n", + "../rotated_barcodes/bars/676428_83.png 676428\n", + "202842\n", + "../rotated_barcodes/bars/682571_43.png 682571\n", + "924314\n", + "../rotated_barcodes/bars/684197_84.png 684197\n", + "368858\n", + "../rotated_barcodes/bars/684270_26.png 684270\n", + "766170\n", + "../rotated_barcodes/bars/68507_85.png 68507\n", + "945668\n", + "../rotated_barcodes/bars/687733_17.png 687733\n", + "383962\n", + "../rotated_barcodes/bars/68810_68.png 68810\n", + "668420\n", + "../rotated_barcodes/bars/688747_50.png 688747\n", + "956458\n", + "../rotated_barcodes/bars/689244_86.png 689244\n", + "217386\n", + "../rotated_barcodes/bars/689480_56.png 689480\n", + "136490\n", + "../rotated_barcodes/bars/692560_82.png 692560\n", + "21610\n", + "../rotated_barcodes/bars/692726_87.png 692726\n", + "652394\n", + "../rotated_barcodes/bars/692768_9.png 692768\n", + "34922\n", + "../rotated_barcodes/bars/696430_99.png 696430\n", + "757930\n", + "../rotated_barcodes/bars/698073_10.png 698073\n", + "424362\n", + "../rotated_barcodes/bars/698408_105.png 698408\n", + "164522\n", + "../rotated_barcodes/bars/702492_88.png 702492\n", + "213738\n", + "../rotated_barcodes/bars/702831_70.png 702831\n", + "1021674\n", + "../rotated_barcodes/bars/704977_116.png 704977\n", + "291898\n", + "../rotated_barcodes/bars/706303_89.png 706303\n", + "1046842\n", + "../rotated_barcodes/bars/70829_19.png 70829\n", + "500036\n", + "../rotated_barcodes/bars/709474_90.png 709474\n", + "564346\n", + "../rotated_barcodes/bars/709541_68.png 709541\n", + "371834\n", + "../rotated_barcodes/bars/710047_91.png 710047\n", + "1009018\n", + "../rotated_barcodes/bars/711747_65.png 711747\n", + "791418\n", + "../rotated_barcodes/bars/713673_92.png 713673\n", + "408762\n", + "../rotated_barcodes/bars/713837_31.png 713837\n", + "496058\n", + "../rotated_barcodes/bars/71578_1.png 71578\n", + "683332\n", + "../rotated_barcodes/bars/718346_93.png 718346\n", + "657914\n", + "../rotated_barcodes/bars/719011_30.png 719011\n", + "828154\n", + "../rotated_barcodes/bars/723407_94.png 723407\n", + "996878\n", + "../rotated_barcodes/bars/724354_98.png 724354\n", + "534286\n", + "../rotated_barcodes/bars/730247_73.png 730247\n", + "860558\n", + "../rotated_barcodes/bars/741130_28.png 741130\n", + "659230\n", + "../rotated_barcodes/bars/744180_71.png 744180\n", + "129630\n", + "../rotated_barcodes/bars/746461_105.png 746461\n", + "490654\n", + "../rotated_barcodes/bars/751772_95.png 751772\n", + "221918\n", + "../rotated_barcodes/bars/752545_85.png 752545\n", + "306910\n", + "../rotated_barcodes/bars/75293_60.png 75293\n", + "477572\n", + "../rotated_barcodes/bars/762095_96.png 762095\n", + "1028270\n", + "../rotated_barcodes/bars/762765_97.png 762765\n", + "470190\n", + "../rotated_barcodes/bars/763550_3.png 763550\n", + "747950\n", + "../rotated_barcodes/bars/763624_6.png 763624\n", + "178606\n", + "../rotated_barcodes/bars/766229_98.png 766229\n", + "345326\n", + "../rotated_barcodes/bars/767170_88.png 767170\n", + "537070\n", + "../rotated_barcodes/bars/767650_99.png 767650\n", + "567790\n", + "../rotated_barcodes/bars/768076_40.png 768076\n", + "201454\n", + "../rotated_barcodes/bars/768681_100.png 768681\n", + "436974\n", + "../rotated_barcodes/bars/769258_55.png 769258\n", + "701422\n", + "../rotated_barcodes/bars/771384_101.png 771384\n", + "181566\n", + "../rotated_barcodes/bars/773819_95.png 773819\n", + "977726\n", + "../rotated_barcodes/bars/774581_3.png 774581\n", + "386174\n", + "../rotated_barcodes/bars/77563_53.png 77563\n", + "981892\n", + "../rotated_barcodes/bars/77567_60.png 77567\n", + "1047428\n", + "../rotated_barcodes/bars/776566_60.png 776566\n", + "644734\n", + "../rotated_barcodes/bars/777708_102.png 777708\n", + "243582\n", + "../rotated_barcodes/bars/780129_62.png 780129\n", + "302526\n", + "../rotated_barcodes/bars/781437_112.png 781437\n", + "512958\n", + "../rotated_barcodes/bars/784739_35.png 784739\n", + "825086\n", + "../rotated_barcodes/bars/785066_26.png 785066\n", + "699134\n", + "../rotated_barcodes/bars/788159_122.png 788159\n", + "1042691\n", + "../rotated_barcodes/bars/790872_103.png 790872\n", + "152643\n", + "../rotated_barcodes/bars/791427_104.png 791427\n", + "797763\n", + "../rotated_barcodes/bars/794159_10.png 794159\n", + "1018691\n", + "../rotated_barcodes/bars/795073_52.png 795073\n", + "275587\n", + "../rotated_barcodes/bars/796043_105.png 796043\n", + "927107\n", + "../rotated_barcodes/bars/796155_106.png 796155\n", + "980355\n", + "../rotated_barcodes/bars/796968_93.png 796968\n", + "165507\n", + "../rotated_barcodes/bars/798645_94.png 798645\n", + "388995\n", + "../rotated_barcodes/bars/802074_35.png 802074\n", + "673731\n", + "../rotated_barcodes/bars/803285_70.png 803285\n", + "357395\n", + "../rotated_barcodes/bars/812578_33.png 812578\n", + "559507\n", + "../rotated_barcodes/bars/812916_13.png 812916\n", + "122259\n", + "../rotated_barcodes/bars/817129_38.png 817129\n", + "441811\n", + "../rotated_barcodes/bars/821985_97.png 821985\n", + "309795\n", + "../rotated_barcodes/bars/826240_107.png 826240\n", + "11875\n", + "../rotated_barcodes/bars/831722_26.png 831722\n", + "700643\n", + "../rotated_barcodes/bars/83180_126.png 83180\n", + "241940\n", + "../rotated_barcodes/bars/836147_34.png 836147\n", + "837683\n", + "../rotated_barcodes/bars/836894_59.png 836894\n", + "738611\n", + "../rotated_barcodes/bars/836974_56.png 836974\n", + "759091\n", + "../rotated_barcodes/bars/837963_108.png 837963\n", + "923187\n", + "../rotated_barcodes/bars/845228_108.png 845228\n", + "239027\n", + "../rotated_barcodes/bars/847870_81.png 847870\n", + "786355\n", + "../rotated_barcodes/bars/850150_78.png 850150\n", + "635635\n", + "../rotated_barcodes/bars/851759_127.png 851759\n", + "1019891\n", + "../rotated_barcodes/bars/853457_109.png 853457\n", + "292103\n", + "../rotated_barcodes/bars/854261_101.png 854261\n", + "389639\n", + "../rotated_barcodes/bars/85470_76.png 85470\n", + "751380\n", + "../rotated_barcodes/bars/854789_61.png 854789\n", + "331271\n", + "../rotated_barcodes/bars/856653_109.png 856653\n", + "464967\n", + "../rotated_barcodes/bars/859706_104.png 859706\n", + "707399\n", + "../rotated_barcodes/bars/859961_100.png 859961\n", + "446279\n", + "../rotated_barcodes/bars/859980_41.png 859980\n", + "204615\n", + "../rotated_barcodes/bars/865829_112.png 865829\n", + "362951\n", + "../rotated_barcodes/bars/86696_110.png 86696\n", + "174164\n", + "../rotated_barcodes/bars/871471_111.png 871471\n", + "1016599\n", + "../rotated_barcodes/bars/873543_82.png 873543\n", + "856407\n", + "../rotated_barcodes/bars/875188_40.png 875188\n", + "125527\n", + "../rotated_barcodes/bars/875443_46.png 875443\n", + "847447\n", + "../rotated_barcodes/bars/877371_65.png 877371\n", + "969879\n", + "../rotated_barcodes/bars/887007_111.png 887007\n", + "1012263\n", + "../rotated_barcodes/bars/888605_118.png 888605\n", + "479015\n", + "../rotated_barcodes/bars/89206_14.png 89206\n", + "643924\n", + "../rotated_barcodes/bars/894582_0.png 894582\n", + "645543\n", + "../rotated_barcodes/bars/894859_13.png 894859\n", + "929191\n", + "../rotated_barcodes/bars/896978_71.png 896978\n", + "556967\n", + "../rotated_barcodes/bars/903921_46.png 903921\n", + "326199\n", + "../rotated_barcodes/bars/903934_55.png 903934\n", + "784951\n", + "../rotated_barcodes/bars/906367_89.png 906367\n", + "1036663\n", + "../rotated_barcodes/bars/908303_112.png 908303\n", + "983927\n", + "../rotated_barcodes/bars/909886_44.png 909886\n", + "772279\n", + "../rotated_barcodes/bars/914004_113.png 914004\n", + "88311\n", + "../rotated_barcodes/bars/915487_72.png 915487\n", + "1000183\n", + "../rotated_barcodes/bars/915835_59.png 915835\n", + "972535\n", + "../rotated_barcodes/bars/916477_114.png 916477\n", + "524023\n", + "../rotated_barcodes/bars/917567_107.png 917567\n", + "1032203\n", + "../rotated_barcodes/bars/917867_61.png 917867\n", + "955403\n", + "../rotated_barcodes/bars/920234_52.png 920234\n", + "698891\n", + "../rotated_barcodes/bars/920618_39.png 920618\n", + "688907\n", + "../rotated_barcodes/bars/921443_2.png 921443\n", + "827147\n", + "../rotated_barcodes/bars/922284_81.png 922284\n", + "239691\n", + "../rotated_barcodes/bars/923680_115.png 923680\n", + "33355\n", + "../rotated_barcodes/bars/926999_116.png 926999\n", + "869771\n", + "../rotated_barcodes/bars/927121_117.png 927121\n", + "288139\n", + "../rotated_barcodes/bars/927672_118.png 927672\n", + "191883\n", + "../rotated_barcodes/bars/931401_119.png 931401\n", + "399819\n", + "../rotated_barcodes/bars/933718_120.png 933718\n", + "614347\n", + "../rotated_barcodes/bars/934311_121.png 934311\n", + "893979\n", + "../rotated_barcodes/bars/934533_0.png 934533\n", + "337947\n", + "../rotated_barcodes/bars/941292_122.png 941292\n", + "242523\n", + "../rotated_barcodes/bars/943193_124.png 943193\n", + "414107\n", + "../rotated_barcodes/bars/943662_123.png 943662\n", + "756123\n", + "../rotated_barcodes/bars/947515_32.png 947515\n", + "968155\n", + "../rotated_barcodes/bars/949613_32.png 949613\n", + "497627\n", + "../rotated_barcodes/bars/952345_37.png 952345\n", + "410155\n", + "../rotated_barcodes/bars/955310_124.png 955310\n", + "765035\n", + "../rotated_barcodes/bars/957227_28.png 957227\n", + "953963\n", + "../rotated_barcodes/bars/96736_63.png 96736\n", + "46804\n", + "../rotated_barcodes/bars/971208_120.png 971208\n", + "144507\n", + "../rotated_barcodes/bars/974681_125.png 974681\n", + "417659\n", + "../rotated_barcodes/bars/974748_75.png 974748\n", + "225147\n", + "../rotated_barcodes/bars/975127_42.png 975127\n", + "869563\n", + "../rotated_barcodes/bars/975487_81.png 975487\n", + "1038523\n", + "../rotated_barcodes/bars/97565_15.png 97565\n", + "477140\n", + "../rotated_barcodes/bars/983228_126.png 983228\n", + "253967\n", + "../rotated_barcodes/bars/983634_120.png 983634\n", + "546831\n", + "../rotated_barcodes/bars/984099_105.png 984099\n", + "819471\n", + "../rotated_barcodes/bars/987102_26.png 987102\n", + "753423\n", + "../rotated_barcodes/bars/98869_127.png 98869\n", + "378916\n", + "../rotated_barcodes/bars/995537_81.png 995537\n", + "291023\n" + ] + } + ], + "source": [ + "# generate horizontally and vertically flipped images\n", + "for path, dec in zip(df[\"path\"], df[\"dec\"]):\n", + " print(path, dec)\n", + " im = Image.open(path)\n", + " im = ImageOps.mirror(im)\n", + " im = ImageOps.flip(im)\n", + " new_code = hv_mirror_code(dec)\n", + " print(new_code)\n", + " im.save(\"{}/{}_hv_{}.png\".format(OUTPUT_FOLDER, new_code, dec))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +}