block by dribnet e61e9b409d3f2a9122774790324f49eb

17.1.MDDN242 PS3

Full Screen

PS3 MDDN 242 2017

Scrape Montage

Update the included scripts to create your own grid based montage. The scripts will be covered in class Friday.

Describe here your images you decided to use and any compromises that were necessary to build your collection.

index.html

<head>
<link rel="stylesheet" href="//cdn.leafletjs.com/leaflet-0.7.3/leaflet.css"></script>
<style>
body {padding: 0; margin: 0;}
#image-map {
  width: 960;
  height: 500;
  border: 1px solid #ccc;
  margin-bottom: 10px;
}
</style>
</head>
<body style="background-color:white">
<div id="image-map"></div>

<script src="//cdn.leafletjs.com/leaflet-0.7.3/leaflet.js"></script>
<script language="javascript" type="text/javascript" src="zoom_image.js"></script>
<br>
<a href="montage.jpg">full size montage</a><br>
<a href="left_right.jpg">left right images</a><br>
<a href="tsne.png">tsne</a><br>
<a href="tsne_spun.png">tsne spun</a><br>
<a href="movement.png">movement</a><br>
</body>

collect.sh

#!/bin/bash

# show commands and stop if there is an error
set -ex

# make the directory if it is not there
mkdir -p downloads

# clean the directory if there are old results
rm -f downloads/*

# get 5 pages
for PAGE in {1..3}
do
    # this is an example with a group
    URL='https://www.flickr.com/groups/hdr/pool/page'$PAGE
    # this is an example with tags
    # URL='https://www.flickr.com/photos/tags/'$SEARCH_STRING'/page'$PAGE

    echo "about to fetch URL: " $URL
    sleep 3

    # fetch the images
    wget --adjust-extension \
         --random-wait \
         --limit-rate=100k \
         --span-hosts \
         --convert-links \
         --backup-converted \
         --no-directories \
         --timestamping \
         --page-requisites \
         --directory-prefix=downloads \
         --execute robots=off \
         --accept=.jpg \
         $URL

# other unused arguments
         # --recursive \
         # --level 1 \
         # --domains en.wikipedia.org \
     
done

customgrid.sh

#!/bin/bash

if [ ! -d "/usr/local/anaconda/extras" ]; then
  # Control will enter here if DIRECTORY doesn't exist.
  echo "smartgrid program not found"
  echo "please first install using directions on blackboard"
  exit 1
fi

# show commands and stop if there is an error
set -ex

HOME="/usr/local/anaconda/extras/home"
export PATH="/usr/local/anaconda/bin:$PATH"

python /usr/local/anaconda/extras/smartgrid.py \
  --tile 12x6 \
  --input-glob 'resized/*' \
  --left-image 'resized/29516311783_87657c243a.jpg' \
  --right-image 'resized/33488098312_91556220b5_z.jpg' \
  --output-path customgrid

install_smartgrid.sh

#!/bin/bash

if [ -d "/usr/local/anaconda/extras" ]; then
  # Control will enter here if DIRECTORY doesn't exist.
  echo "smartgrid program already installed"
  exit 1
fi

# show commands and stop if there is an error
set -ex

# make the directory if it is not there
mkdir -p /tmp/smartgrid

# clean the directory if there are old results
rm -f /tmp/smartgrid/*

cd /tmp/smartgrid
wget http://deeptom.staff.vuw.ac.nz:9000/smartgrid.tgz
cd /usr/local
tar xvfz /tmp/smartgrid/smartgrid.tgz

echo "DONE: smartgrid program installed"

left_right.jpg

����JFIF��C	

			

		


��C	�����	��<!1A"Qaq#2B�����C��35R�7������/!1AQa"q������#2BR���?��>��WQ�\_]h*�N'����3GB]�~���P3�88�M$n����pu-M�+/|gj{l��Mm�O#0l;�n૨>㎘]�ũ;�%��4��z��V�J9Qd%0�c�pI�/68A]�یb����t��e��,�M��|m��җ��������3��FF�N}���g?�y>}Լ�
���<���k0���$q��?�:R�2��j����b��$z��$�����������[�Wk�+KL�Z�`���[8��6̮��<�/��O�ψM/�,ڲ�Rا��e���ǢҶ��-ʼn#A���JL��Gj�Ľ�P�Xm�M,T���u�S2�N��P�X7�����JH���}{�j��F�_�e�����Vخ7n}��@�g��#�K�-��Uӻ��PWW�5��8h*Z�Q��"I�?�pˌ�(�'�.������GOW>��z5ƥ�'�Y��e�5����X�6�8�Fʕ�,2��~�\m�
��Q-ԐCW,��	$�x���_鑉�O+���.T����GލD�j�f�������S�V�YN~�P)��7�o����)�x���+�J�����:��G���!�	e!B�'�ԡf�:�Q�ؠ�u�*�x$ {u���r�}�����ZA��:��ߥ�ސ�,����X��4G���B�/��^�<\c��9��e�-�僬4T�k��쾂��\)�5��SwI$Z��-�G3g)��0b�1�
�����G�&2C��)`�Ǥ�ez�T*�3UӢ�'�Y�y�}��#���#��wF�z+埴��ME'���T�s�Cq�<s��]řٯ��I�%���-m����D�O$AWೆ�瑟Ӧ��F�������;�s�Ҭ>�#����~�<���VH�����a�`}������4ߴ�_�ډ�W�`dd/n��������8�9����;a�,��Uf��Mp��7,������)r��B�y��zY):�����:7�3SUGl�����8��SΫ�G���[��y����W���V=�{֣��Z4��%���$���+�7?���Xe�'��.����g+u^�Қ��t�Zz��IV�=V�-[�`��"��U��+��׊��Ev�*�{MS��78��e��H�cD���|�J����Am���`m��nZn�O]������i�MJZ�;�p#
�;؅p���]MU�ɦo2WB����,u"y�IW�ܱ(&F`J�1�r�J1�d����驫>qhҁn����P�1B!�|��q"�O�.�H�_t���GS��Y"��&��PD�@���@��eq�� z���0ŀ_c�=DV�c��P����j�<��
X�íY3A�3�:��A9��|t.'6n����нd	��S�
�۞�)�ϷB�<c��h�}��K,]e���{l��g�PC=ka�^��`8�68����y߯�7g�в�JӢ�=%�̧reP1�O%s����-��+��%��c��VLTE�6$�#i��x+�2:��G���4u5�Z喜b'j-�V3��'�r08�TK/W˅=�,uTBHŹj&5`��B�U�����q��i{��m3K��%��G�:��R������?�VK���WKn�>���j�x{��Pǒ�9��d�Yڊ�^���f���)���V��%V⎯{�G!��<���ۨ�E�L.v���c:��)頧y�0UH>�R&Y�B�.8���x/�i���s��n��Z���m�qJZ*:C��9�����Ƥ}E��'�A�{[ݩh�*���Q�/���b��b��,�q2I<���m�Z(�j(4�[&z����{6���a��َ@'n[p� ���4�}��G=l��b�W9�xAywFYK6���
	'q�"��s�Uk��:Hl��Y��͐���H���J�#�Vش�Zd���WE��[���8%UK��&@��#��b���\�N5�+����M�MU]Y4��2�E���ۂ�v�@#=;�fA�?�_f��"���րzD:�3A��VV?~��վ�ݘ��Le:�G6���C�s���,���T�������2G��d�	�3�y��mSiڥ5n���ۜ�R��BH��w<�'����������h�w�6���[Y[3VK
*�52�����#d��#��ج�oJ�eMOQs�H9j�4��Z%@F�����0Gfq�k�/�m��h��qFիN�Q�|$q'�o_���!� ;)\w��R[5�u�I�^��ק�`�Z7�i�X��J�ܼ�4������{m�����U�®��hi�E-@���FH��h�9 �<P�";h.�S��G�饣D��* `�8WVLŝ���{R጗^�^�$�ylŁ�d�W�i��8��e� �P�+��x��]QUYk�B5�����J�,n�ԉ[b��:�68
����zh/��xo��u��������k��e�|bU���㬸�\�����lw�1q��RU��3��?zHќ�۹;��z��o����Ev�ٯ��\(�S���R©�I1�>�w���&�F1��5I���h�u���.�D&��d�<�Ϳ�2�+(��w`d�S�Gi���R
Ye��*H)�6�i����W�v���l1�I#�U�Rު�.W�&���1G:�E�:	HW�܂���y!W���j�jڠ�۵�H7H�[û#��D7���RB�s��(���u�e��"���<}��"p:6�Z�~A1�%`��h��⿎��hס�.����w��O۫Ѡ�����><u	��n��4�z�Ӻn��Auԕ��ֶzʛ���6�i[`L{�o��-�_�	��N���Q�}�[XX�����0��r�2�� u2@��ZC�zB�p��ʑU��t{��A#ʏ�} ���>NN�$��#Q�Ωj.U��X�%)�����3���)]I۹{�x�U�t��jMASM
Ȭ�ؒś����:pF�As�v���+��6�n3��i�&X@h���H`W<�0~�um]��.�u��6�ƦZ�����]��I
.�9#;��R� ��SY��p����U���ӇH��r��I�eO�#��4���Yg�Tv*�4.TIF���,s琢����Q�����'��y-}��n���_,"���������/�pv�������ae�~���ݨ*�%nvگ�X��irn>3�E���-���.4�w'OP�H`@�\i�R�lnD��f���ό���|s\����c��{��Q
��^����Z�c�ޚ����zl�u����*�w�zBz��eSO�����8ک���� ��s�R(�׺z��l�{|3�^���X#Y�ճq|)m݃�x�W$�����å�����YlP�;m38�ӆ\�eAPX�!T�����ѧ߯�&z�����*u@ 8�AzAA��`ޭ��}�X�ͽ-
<W����z�Ds�U�a�s����K	�C�Kw_�Pth�L0U\����sQ[m��s���|G�������:�;��m�+e�I[�9�A$ճ3���S��21��>Z�6h�i�-5JPFn��̡�����%��2x��h��-/lT4kS���:�Hϝ����w�s��0T��i��=��,��[�m��Bjf��g�/��R^���T�8.Mm�.�*}Kl��5_�)�$��ê	0I� u���GWJk9y�B��#)���c�qD7T��K�������4r��#����d���ϻ=��ϭ�.�UTsUT�T��K"�R�`�F@�8�G�`Ֆ������S-��Q����)��E@�I��~�޵b»�L�m
��Ml�B�$���1�(f��8]�q��<d�^���n���CP,W4R�@�F�O�N?��g�9��5dc]v�N�MAk7}1��P��6�UU'��L�wq��=[b���w{;A0�Kjz���6�˻)���1�W$I��;nX�R�a6�/N�|qh*Z9�}��uz*��4b�ڟ=Bσ�� ��K����Yp}w���ǧ���%��=z
uy��5���cRI����%�a���:�=@U�u�3�@y��:9�z�����`����g��c���ss���tH�@G�@�=ȿo��iGۥ�DZd�j;��ݪ����8Ч����=���H�[GF�h�]x�#�&E]��w1|��~:уaV,fm,�➒�su'���x�u�~	���=��mIh*H7e(8E'��D��8<�{C\�Uim���QP�Bc��&b+������I��<����u|���f��m-4RDM]8�o�_�����]���K�V���ۻ�=l��!�4yyL�bL�0x�鞣,x"�ڻI���N���մ4�1�R,��p�G0ާ���bz����L}���w�
#_n�#٠��o�U�z��12�AP���h��%Vku������ü��U���!ډ��]��|}?�u;-`�Zt&��Zb��-t���qeh��G��>������>�V�䜠�ޟ�%���E�-�
�0��Gd���<t\��=�����[
}m]4Qܭh=)�x&?Uފ�6���A8�%ZgHԝQܘ`��X�'�[㜗�)�QOI)�ۥ�?[���;]��맣���)�����O�A��?F�s�W�3DvG�_JXͧ_��ԔU��4�E�*&UwR�$$4���F�c�'��?E���鞨*�ۭ�f2<�l��],������`��qGs��=���$t(ǎ���P?@&������ݮ��G�;�����a[��w<��N$�`c|q��Hm����I]-5�PSU
y�A�č�їqR�dƹ�<g���4XwK~�,�rQ�R�IE|��d-�2�"���Ϝ~r�,�=�O��ҍ��5϶J
�Vb9����3�������������Gm�H�-4QF}�5' ���� �s֌��h�Ǣ;sk��
��e�ap�'��3��9
��?�z,���]�v⪮{|���R���D���te�E�Y���}�/�|��A�dl��U}�wF�m��6y�8L�yp�J$�q玈>K���lݏ��I�ݦ�oЎ���N
��8?@���s�]��}��6�O�M_5m��Ws�H()��!d.UV-�%�q����:��f_�i�%��ڛ��ZTSOM
XJ_�Tk�8�F)w�}3��g���]]�t�k*�kب���ڴ�������b�n������'���YE��~��\�U�u8W�`
��)I��u\2d�`<��/%c���X4��� ���#����7���1�n��>28�Lѥ�eM]W��Ttu��'�OS�nw<�0x#��:�i<�a�ד���1����39�ת�����1�b��$�V�+p9�:�Z;�ߞ��Tt0#�:=�����,'�Ծ�Yl�`6}�^@[�Q�&��=e� ���u���d��*P4 ���K���nv�21�#��Q���+��ݺ*z���T�2R���d�Q����<�<{��91p�}޽��{A�'��G�����oC9�`x�29��[gu��֣L]�.�1�"��X�K,ѤQ��m�7t�'8��JȲ]����*tU�*�Um���~TS\Ӕؠ��)��pFps�i�T�O�t���+-��� ��-9��1�`�gہ瞅#:OJi�]=Md��v����l�2��I����8�t3�ۯ����V�ŭ��w�jZ�F����>�G?Q��t�-&V���e'{t�ƪ��J����x���2S�S���8��T�FX�;S_{?l��3�-��OE,�n;"�5��wR���8��p^QG�Bv��C��J�:�����T�5JK���lHl`8>1�z�r̵H]��e�Ui���+]OM��Z����$t��sd}����>|A��Ti�
L�:Z����E�����B\�Ζ�{�YV�����ZM�N��Q��М�tyArU��{�Ӵ�6{�U-_�PT�	_Ӛ)ia�dx����yl`�{#VZz��7���[���]5u<z4��SLD$���N�v�\�G�f�]�6���֓=TR��zՀ{�z��'ߎ�b�j��dT0����8�H�|~s��X�Վ�\��t�%���؝��sѶ�}��z��R^�?�RXwSC"�Q��P�F@�O��ֵ�Z����ߟ�_�����z+�V�z��~;y�%�����`��+�X�y�$X�8m���ǟ���ϩ�BOG]�\>�>���k~�����p�*}�G�����񚚴��qq�:۫vf�����N@���zY(,�>�,�Q�����[��m�M#�z�`����C��������v�Q�M�U([1Ċ�
�f]��󀠮z�V{k~�����ĸ����m��tx��!hĊ�b�FǐKdV�]������Z��:i��S;�Y=
2�B�!�[����#�@�3��i�՚�ݿ������p4uvq1�T@=EQ�[���8�fԷ��vcG�[/�\����R� $�l�����"�|s�9��0�!�\�C�մ�~��-��jSS�TJ�d��~������8�㫐�������bmw���Xk�
������{�oj4m���<��2J�!�;��o’��W�TE5�>���rdՍwΙ��Q9����Ui#~w�r9�QQ8$ZB��j%j����TR�)P����&���ݳ�y�I���:�tִ�Z��l�写�e~U�d`T�c|��a�Ҩ:GWi�b���t�����}(�u��.���_W'�d��<��	��?m�ME��L���AWOQ�H��m`��`66~�����>�ѱ� ԚWTP�lt�9ED3��P�[�* �/���>S#�N�F�u�ۺG,�r]��VM�I1p���g�b��"��j�����_d�i�槝��I�$+G"�����<�0X�2+X۟?߯�&z�ȥc�Z��1��G���]SW���d��ک�$��*)7m>O~���=3P�d����Y�z_C=�����O���nk
=��_B�%��bL�g�}]���5o�π�^��5��O�'�c���������u��Ά�O�+�(�U-M'�%DJ�$�)���g�]�r���_���cm�������?&P�з]ef��������zz�
��Y*��+!�q���z�Llrq�����~�Ӗ�g�����Sd�F�f�Vimgi���@&���+$�8�ٖL������8�������MOO�Iߏ�xZ��jE�k$ �U�2ֵ4���%d!K�+�<����c��I5t~ӒV��Qp}�롁u��xԕ�[,��O3P����&�y���-m}=��?��t�g�-�_��,�h�GI3�%���s�
gdvU�x���X���]�������yރWI�W�DnF*J����5%i�����ZA����?����v�'�^�ء�_�R\�em�k���Z*P0	%;�G(,���g�Nz�W�>If���h~��=<-5UuZ��ZZ!M���&9UeR�LlU�m!�=�GQ���?l�Z��)ll�C,�h��`��!>1��Xǒ��@�UOz5������QSKG-�(*��ϛ����9V��$a����!�Pk]>����k������T��٧|R�4����!I�1��c�"29k�iAn���WZ��.t��R֦Т9���~��!p[����#xi�k4��y�y�����2X��>����h�Wk�ev�zjǤ��=��N�JHՔȠ~�$���0ZFY��Y�6��١�5�b�6���A�p�1�p��uK&��E.��e�SѲW����R�R�wGL�`�]ǖ��ry�=���y�'mt����q+�kg���5�q©&[wI�A�s�6�}���f�Kd�����]-P����)K(�Q�ɸ�\�:g%���KV��[5}��H�k��H��i���G�`363�D��t'�!ݗ�t�ͺ�ڵWoi�u̲TR�ӹ�D
�'�3���3�z�,��u���u`����)���
z�H)攮�ۻq�Ḍ�R��"���I�-��k�����e����  �ň��g�'5rG�A
2�>I��_QܖOV��q�Zo9���Z�ꥨ`�$0�4�s��rs���?��?U�������u���I��D�[�Qi�}T�r�W� �RH��
��&ʜ3��ǒp?#�}VS_�*_��ޟ��ή_��ѽ���Cۛ�нU=���|U4BX�h�XF����.�
�\����oR��t����RU�%��z?�ھ�n�V��40GO]Uo]j�5SL��X�X�
�y ��������Iprs�^� ����Ma�^�kR��o����N덠H��NrnS����^�p�rV����f~������uVK����e����y�W�<o�l���ppG^{�R��sRjC&�����(��[�v}z
$�W�����iAx�[�b����I��z�|��C=���%��w����@`Yd
P�0��3s�cpG=�&�<y���J{m�{i���U^b�z
�d�/F�����,F�'��䞻j��R������I��PӦ����]&����Un��RT%,��L��ʥ��ఐTG��z�T���,��N����X�Gmi�K��Q�tȋ}/�
=?��qPI�!��g?S.q����^{��tzͶ�ػG�/�dMt���\�o���J�$lĉ��~<������z�_OJ9_?��'�4��+����펾����NT�[�⨀��A�>�s�G������ZÕ?����h�+_Έ��]�Wh�u���X�c��q��v~�O�o���j��_�*��z�꾭�J�'M�w�3��$}����~�F��}����=۪b�J��(5]6d;�݅�A�7_9���.�����VSUC��]䮞Qc�W�\Hw};�����3��|2�h��K����
@(�u�j[a��i��A!�C�+������Vy.�u�J��X��T�>���R��@F؁$o8ʐO ��g�F�t��wT��=���"����s���A��I.q�GV�0[t=l�jdX2��c����eR�5�����ЬV�	��ED��h��N9+���O�ۨl��޴ֹV�X�ܩ�L8� h�D(�8fe�q��h���jE״�!,�i:�q`�I���I�?|y=FX�X����CO�)-wo����z��*Ɔ	�j�ԭ����ry�*���V�5Gu��f��
�.���<�mb4�������|0ݻ�<�:�[3cƙ���y�/\�	[�Bِ-�Vy"f<���89㎣Hd��.��]+�X�]�ꚽ���ޔzd2�l%�o�c�㌜k�Gi��f����f����Z��Tz�5)�����bN�rz��M���Ҷ᯵�T�������n*M;���۪��w���j#�4�X��3P3�B��4��T���r��`y�(�ɛ{k{�79�n��i����u����Ӓ$Rʱ�0(�x�q99��)��Qܻ瓞�Ӈ	/΍�j����Mx��t�?S��4<)U���o�'���J��I�ѥ�6x.��5���[���hg�zz���E�D`>�`9��ɬG�����9�
3�5^���w��,v��4�D�nN�d$r�p|�:���&љT�N��-��i��z��SOnCQP�����\�D�k��� 2��8����K�G5��5j�
��dt]75���k��	z�0oV:��`�68
q��P�W�ZC��U[nV�[p���7�EIt�@��1�g>$��,Yd� ��'w�eN��=}��e��
���#M�v�����2Dl����8��֠���%&��ڧT���W�^8MJ�%,h�C�hυ$g�$��eV�����k�'7���Qگ���wZ�i)a���2H�N�+?V�	ٸ�u�˲4ڴ/��Zƨ�X�jV���`��0܍$n��$�������cq�a�)n#6I��;�߮q��V,����6����##8㑎�;c��[W�.�������)npI
S�qS2<
J��R3���x���pp��ɭ�2޵�k-=��J��#�"�P0�v��$�d�넴�m���I�{�m���ԶOQO�:LJ�
�gʃ��O�@�z��J���"�M}x�W�*��6ZYg�H)��/�� ''h�'�9�F�m�/���Pk��4$H
E�d��<��AK�\u�=��]�;���-�v[Vms�$��M<�H�r����*N�|�S��e���w׳�U��Ŗ�!�T�X1�e�<�w�,��“�pʭ������,�V���<��5+5s،#I~�rJ�V��P���d����\�b}e[K;�b�1ԅ@����Gq�[�4�z�d������i2\/ur,^A���s��'Ǖ�
%z2��zn������i�+. ����r��Ӹa��x�겆l�]��h}yl������f��+�1��|2����4Y�b9�#�_ɵE%������{�Z�E�i�%�����b���2'G�**�l��P8�H�c���]����]^��n��v���3�,���hYcI��S�H���������=�ԑi�ΫJ�J�zD5T����ǟ���s������;�2�_Z��4�j�>��o���S�R�c�F�$P���U�aY
㍍���Y�R4��Ws��oA]j���Yj�}Tԛ�1Dڛ�6�waGՑ㞮�X|����uQ�d��Z�AtY*֤C����3�g��So���{Au�=䥒�Wv����+ֱ�&+��ìL�p�)#���
+d#������������rU	)�_,�PK�zrYF;�Hm�O$o�0�\�nt1J,�l@�!�(?��Ǿ=���a�$��+\�.���]�n����9i�ıL2�0<p�
�z���p�d��~�4�U%j�Hꮹz�eU>w*�<	֒��|����,�WmO���@�1ns!xє���v�ݱX���/]aVW+C�d;�M`���[S7�KD1��1J\c,�O����1��iMQ�I&ZWn��픱jkum�f���`�I�*K3*����Cd,��2y�J靽�͍���ZR����ٜC_H^J���7��'�F9$�B��Gt99��X)K����X����He"CE2z��Xđp2�r3���G8�����LGH-��i�V5�Y�%$2��OP��(�3�G9߹�Ô�X�Ƙ�]�;}��Yj�dj�,f9���8�|�pOQj��epIj�8�꩞��2��q��l�����F���m6s���I��V���ҽ�f1��T�F�{c���#�t����DT���%t3�Yn̲1iV0C�x(���ppq�|��_k-��+����tt�i)VT�H�/��.	� A'��jI&w�[B����v����~��Fc�1)��H�Bv!8��c�	q�nj<�_�9}�w��٣�\����F��ȇ������ڣ>�ۢ�Ԗ��[�Z�Xj=U�v��d�:V8��UX�@�~�sC;rC6z���v�>6o߳%������d�d��_AW{Sp�mQ� 9��݁I���*����5%6���N���k%�-$��،�I��B�Dc�D�+��_�(-�Z�}��:i��4щ1�:o_���	�>|t�,>��:�QC-4v�یO��#j�
�c;h����T,KS�~���Ev���DX���A��30c��?צF	{���[��:��C�U-[�K����`��F3��^E�n�w�Rk���gKjR��ZWU�Yp�bFF��~��qѤ�"B�K�jk��ukŞ��5D�b���
���}6$�LcRI�$�`; \u-�HG��T�P	#��)��d%�?�@0S�d�%H��!�Ե�ut_1x���c�ˤB8�|zĜ��7};8� �h��	Ug��Q]�ޜ"��
����0����K��F1���������I��m�A@�*)i!�L�J�4�	?x�n*�0Zr=i�55����RK7���jm�.���9 2zZ������\�m��e��獞�fYW�)(���H	F'��I��E_��h�ol�毧{�EO-}�=:��=Y��9�	��"��o�<��J�Wxf8��oUuf��CSV�<S�|GǾ8���)�7��^������r[�J2ͽ�z�99U�$~��:�ͭ6�J�;f4�/6���j��(W#8�G2s���.
�K��>�QP[�k��1Q+$���L����nq��9�j�=��W�k�h�D�m���<����\��ˊ@�O<1AR�P#���g����j�I�**9g�5�d(
��-�������Q$�"�^�u8I���q�9�t��0
��*�0�A�x��ߪ�&��1�"ΫB��i�0��� ���Ǐ>�\�FvЖ���a��wrOҫ�Ǔ�:���j�Um*Օ)��@'�����:Ӌ\�ٌ����
�Yo�g��dIZ6��0?<��f���lr��]mw��ۂ���DD�ǐ<d��>q���)r��"),nIy"$�	nI����Y2��8��N�$9N����ץ��U`�Z�W��VZ.vj�e"�\"��x�eX�I,w���#����U�f
Y�N��Uݞ�OKQ-͙�%�%V��)'h�8�y<�̓��/���M��0��)X�T�G��f9
��XQ�\���X�q��%4vZXi"�v#+�x�2?��Z;��_7uU_'h�F���'��ps�u-!@a�w̊�c}ܺ�#�I;<c�?߫�
%Z3�}��7J��E%���h�ڠI�J���°#8�;F�6�Kl��
�*K�
Z;$�ӡy]س;��'��ǎ��� ���]�cIMQr���2�`=ԓ�ۑ��E��
�ܦ���bgRM�ч�{�����,�5]���Վ��3o%=D pU��9�?|��w
Y�����5��[�aRH��T``���nlP|?�"����{�$�i*�nKTt��0R������p^:�4Z���w��Yb��LY)=+|��x�$����ۦE--�;1a�J�dQI�1g��4�����If;���9�'��TO����(�M��	 9/�r7��w���[<sԢ��:�ѥ䞎���	�i�`\�N���9�O 9���I	%� ���Hmף�(�gP���>��A��ˀ9=kq��O����!����jE�vP%)�p��rF�?�E/$����܎�EQh�MZ��ke$D�c�_������.�)YSVUN�/�"9�d�u�T:�,9�`u:��η
�F��L�	�	8\���n�?n����Z��;�d�Hb}�� {y�ꌰĚ���eI�Hv����[�d ��(sS1䧂9�3�������,�Z��A�P�<�������\5�Rf	^)��I>?���-�wc����2�UO$����,��c?�o>��UM���M5�xUg0�pT&p=�I���:�L�0����)�� �q��Y���E��'��mWG#ʨpv�~�����i-��*��}_NX�Si�c���Ȍ��ϣT�����
�䕡�?�uUϰ�r8�nry>�i�v�m���M�v&����F�l�����Ч�,�������+Ib����H�s�d?>�K^E0���������q�����祡Lv��H�v��q��!*�������z`Sݺ��w;�;5
�����n�����!�.�s����g�N?ߦH䝳��WR��&>w/��Kcc��s���t��"���
^�=�uc���$����n��1/�/�F�������~���dl��ӥ�LK[�o�%���e��M�3�9ax���-�LCY���;R۵̮���T''���d����M�S'��ăS�Qښ�l����N=�<�>���S
_��H
D����+�b	�!�Iϱ��7"�b�~>#���)�E+1�-�HǏm���:nB�d����G��hUN�ܔ������Ӧ�)�>kCR�s���J�:���-�QP�H���Լ���w!�]M}�~]�X��+��?�z��i���Y>}Z��AQ����s�Wr%7Ș�H���'�a�u�țY֭��#�I=M�m~@���9�rG����_�nB�rxl{}���@~�x���Ϩ�?�����mk��C�L��~�����6�������v���}����ZU�Q#��:��PS\����齍���cA���o�ڎ��D����Cj
{���?a���I��

montage.sh

#!/bin/bash

# show commands and stop if there is an error
set -ex

# this command makes a single image of whatever was not deleted
montage \
	-tile 20x100 \
	-geometry +0+0 \
	'resized/*.jpg' \
	montage.jpg

preview.sh

#!/bin/bash

# show commands and stop if there is an error
set -ex

# NOTE: uncomment one of the following lines:
# cp colorgrid/grid.jpg montage.jpg
# cp smartgrid/grid.jpg montage.jpg
cp customgrid/grid.jpg montage.jpg

# this is just for the final versino
cp customgrid/*.png .
cp customgrid/left_right.jpg .

# convert montage to preview shaped image
convert montage.jpg \
    -resize "960x500^" \
    -gravity center \
    -crop 960x500+0+0 \
    +repage preview.jpg

# convert preview to thumbnail image
convert preview.jpg \
    -resize 50% \
    -gravity center \
    -crop 230x120+0+0 \
    +repage thumbnail.png

resize.sh

#!/bin/bash

# show commands and stop if there is an error
set -ex

# make the directory if it is not there
mkdir -p resized

# clean the directory if there are old results
rm -f resized/*

# this command resizes to 128x128, chopping what doesn't fit
mogrify \
  -path resized \
  -thumbnail 128x128^ \
  -background black \
  -gravity center \
  -extent 128x128 \
  'downloads/*.jpg'

run_all.sh

#!/bin/bash

# show commands and stop if there is an error
set -ex

# this command makes a single image of whatever was not deleted
bash collect.sh
bash resize.sh
echo "Hit <control>-C now if you want to clean up the images"
sleep 5
bash smartgrid.sh
bash preview.sh

smartgrid.sh

#!/bin/bash

if [ ! -d "/usr/local/anaconda/extras" ]; then
  # Control will enter here if DIRECTORY doesn't exist.
  echo "smartgrid program not found"
  echo "please first install using directions on blackboard"
  exit 1
fi

# show commands and stop if there is an error
set -ex

HOME="/usr/local/anaconda/extras/home"
export PATH="/usr/local/anaconda/bin:$PATH"

python /usr/local/anaconda/extras/smartgrid.py \
  --do-colors \
  --input-glob 'resized/*' \
  --output-path colorgrid

# this command makes a single image of whatever was not deleted
python /usr/local/anaconda/extras/smartgrid.py \
  --input-glob 'resized/*' \
  --output-path smartgrid

zoom_image.js

// update these image dimensions to match montage.jpg
var w = 2688;
var h = 1408;
var maxZoom = 3.5;

url = 'montage.jpg';

// Using leaflet.js to pan and zoom a big image.
// See also: http://kempe.net/blog/2014/06/14/leaflet-pan-zoom-image.html

// create the slippy map
var map = L.map('image-map', {
  minZoom: 1,
  maxZoom: maxZoom,
  center: [0, 0],
  zoom: 1,
  crs: L.CRS.Simple
});

// calculate the edges of the image, in coordinate space
var southWest = map.unproject([0, h], map.getMaxZoom()-1);
var northEast = map.unproject([w, 0], map.getMaxZoom()-1);
var bounds = new L.LatLngBounds(southWest, northEast);

// add the image overlay, 
// so that it covers the entire map
L.imageOverlay(url, bounds).addTo(map);

// tell leaflet that the map is exactly as big as the image
map.setMaxBounds(bounds);