/ architecture / __pycache__ / similarity_detection.cpython-311.pyc
similarity_detection.cpython-311.pyc
 1 2  Vx�e����ddlmZmZmZddlZddlmZddlmZddl	m
 3  Z
 4  d�Zdd	�Zdd
 5  �Z
dd�Zd�Zdddd
ddgfd�ZdS)�)�branches�branches_nopool�
 6  branch_cvaN)�keras)�layers)�l2c��|\}}tj�tj�||����}|S)N)�tf�math�abs�subtract)�vects�x�y�results    �e/home/dvalsamis/Documents/projects/Change_detection_SSL_Siamese/architectures/similarity_detection.py�abs_diffrs5��
 7  �C�A�a�
�W�[�[���)�)�!�A�.�.�
/�
/�F��M��`�c��tjt|��t|��t|��f��}tjt|��t|��t|��f��}t|||��}||��}||��}tjt
 8  ��||g��}tjddddd���|��}	tjddd	�
 9  ��|	��}
10  tjdd�
��|
11  ��}tj	��|��}tj
12  ddd���|��}
tj
13  ddd���|
��}tj
14  ddd���|��}tj||g|d���}|S)N� �rr�relu�same�joint)�
15  activation�padding�nameg�������?��
dropout_joint��seedr)�r$�
16  pool_joint)�	pool_sizer��dense1�rr�@�dense2�sigmoid�output�
pretext_task1��inputs�outputsr)
r�Input�intr�Lambdar�Conv2D�Dropout�MaxPooling2D�Flatten�Denser�Model)�
17  IMG_HEIGHT�	IMG_WIDTH�IMG_CHANNELS�input_1�input_2�embedding_network�x1�x2�merge_layerr�dr_jointr%�flattenr(r+�output_layer�siameses                 r�pretext_task_onerHs����l�C�
18  �O�O�S��^�^�S��=N�=N�O�P�P�G��l�C�
19  �O�O�S��^�^�S��=N�=N�O�P�P�G�!�*�i��F�F��	�	�7�	#�	#�B�	�	�7�	#�	#�B�*�&�-��)�)�2�b�'�2�2�K�
W�F�M�"�f���g�V�V�V�Wb�c�c�E�A�f�n�S�q��A�A�A�%�H�H�H�K��$�v�l�K�K�K�H�U�U�J��f�n���z�*�*�G�
@�V�\�#�&�x�
@�
@�
@��
I�
I�F�
?�V�\�"��h�
?�
?�
?��
G�
G�F�G�6�<��i�h�G�G�G��O�O�L��k�'�7�!3�\�P_�`�`�`�G��Nrc
20  �~�tjt|��t|��t|��f��}tjt|��t|��t|��f��}t|||||��}||��}||��}	tjt
21  ��||	g��}
22  tjdddt|��t|��dd���|
23  ��}tj|dd�	��|��}tj	��|��}
tj
24  d
25  dd���|
��}tj
26  d
dd���|��}tj
27  ddd���|��}tj||g|d���}|S)Nrrrrr�r�kernel_regularizer�bias_regularizerrrr r!r"r'r(r)r*r+r,r-r.r/)
rr2r3rr4rr5rr6r8r9rr:)�dropout�decayr;r<r=r>r?r@rArBrCrrDrEr(r+rFrGs                  r�pretext_task_one_nopoolrO&s����l�C�
28  �O�O�S��^�^�S��=N�=N�O�P�P�G��l�C�
29  �O�O�S��^�^�S��=N�=N�O�P�P�G�(��%��Y�P\�]�]��	�	�7�	#�	#�B�	�	�7�	#�	#�B�*�&�-��)�)�2�b�'�2�2�K�
Q�F�M�"�f��B�u�I�I�hj�kp�hq�hq�|B�IP�
Q�
Q�
Q�R]�
^�
^�E�E�f�n�W�1�_�E�E�E�e�L�L�H��f�n���x�(�(�G�
@�V�\�#�&�x�
@�
@�
@��
I�
I�F�
?�V�\�"��h�
?�
?�
?��
G�
G�F�G�6�<��i�h�G�G�G��O�O�L��k�'�7�!3�\�P_�`�`�`�G��Nrc	���tjt|��t|��t|��f��}tjt|��t|��t|��f��}t||d|||��}||��}||��}	tjt
30  ��||	g��}
31  tjddt|��t|��dd���|
32  ��}tjd���|��}tj	d	d
33  ���|��}
tj
34  |dd�
��|
��}tj��|��}tjdd	d���|��}tjdd	d���|��}tjddd���|��}tj||g|d���}|S)Nrrrrr)rKrLrr�
35  norm_joint�rr�
36  relu_jointr r!r"r'r(r)r*r+r,r-r.r/)rr2r3rr4rr5r�BatchNormalization�
37  Activationr6r8r9rr:)rMrNr;r<r=r>r?r@rArBrCr�batch_norm_joint�activation_joint�
38  drop_jointrEr(r+rFrGs                    r�pretext_onerY@s����l�C�
39  �O�O�S��^�^�S��=N�=N�O�P�P�G��l�C�
40  �O�O�S��^�^�S��=N�=N�O�P�P�G�#�G�U�1�Z��L�Y�Y��	�	�7�	#�	#�B�	�	�7�	#�	#�B�*�&�-��)�)�2�b�'�2�2�K�
~�F�M�"�f��E���UW�X]�U^�U^�hn�u|�}�}�}�J�
K�
K�E�C�v�0�l�C�C�C�E�J�J��C�v�(��l�C�C�C�DT�U�U��F����a�o�F�F�F�GW�X�X�J��f�n���z�*�*�G�
@�V�\�#�&�x�
@�
@�
@��
I�
I�F�
?�V�\�"��h�
?�
?�
?��
G�
G�F�G�6�<��i�h�G�G�G��O�O�L��k�'�7�!3�\�P_�`�`�`�G��Nrc
41  ���tj|ddd���|��}tjd���|��}tjdd���|��}|g}t	|��D]�\}}tj|d	|dd
42  |�����|��}	tjd
43  |�d����|	��}
44  tjdd
45  |�d
����|
46  ��}|�|����tjdd���|��}tj|ddd���|��}
tjd���|
��}tjdd���|��}|S)N)r r r�
aspp_conv_1x1)rr�aspp_conv_1x1_bnrRr�aspp_conv_1x1_relur�
47  aspp_conv_)�
dilation_raterr�_bn�_relu������aspp_concat)�axisr�aspp_reduced�aspp_reduced_bn�aspp_reduced_relu)rr5rTrU�	enumerate�append�Concatenate)r0�filters�dilation_rates�conv_1x1�conv_1x1_bn�
conv_1x1_relu�
atrous_layers�idx�rate�atrous_conv�atrous_conv_bn�atrous_conv_relu�concatenated�reduced�
48  reduced_bn�reduced_relus                r�ASPPrz]s���S�v�}�W�f�f�?�S�S�S�TZ�[�[�H�D�&�+�1C�D�D�D�X�N�N�K�H�F�%�f�3G�H�H�H��U�U�M�#�O�M��~�.�.�/�/�	��T�r�f�m�G�V�4�QW�^q�ko�^q�^q�r�r�r�sy�z�z��O��2�8N�T�8N�8N�8N�O�O�O�P[�\�\��S�6�,�V�:R�t�:R�:R�:R�S�S�S�Tb�c�c�����-�.�.�.�.�C�6�%�2�M�B�B�B�=�Q�Q�L�R�f�m�G�V�V�.�Q�Q�Q�R^�_�_�G�B��*�0A�B�B�B�7�K�K�J�F�6�$�V�2E�F�F�F�z�R�R�L��rr��c
49  ��tjt|��t|��t|��f��}tjt|��t|��t|��f��}t|||||��}	|	|��}
50  |	|��}tjt
51  ��|
52  |g��}t
|||��}
tjdddt|��t|��dd���|
��}tj	|dd�	��|��}tj
53  ��|��}tjd
54  dd���|��}tjd
dd���|��}tjddd���|��}tj
||g|d���}|S)NrrrrrrJr r!r"r'r(r)r*r+r,r-�pretext_task1_with_asppr/)rr2r3rr4rrzr5rr6r8r9rr:)rMrNr;r<r=�aspp_filters�
55  aspp_ratesr>r?r@rArBrC�aspp_outputrrDrEr(r+rFrGs                     r�pretext_task_one_asppr�us����l�C�
56  �O�O�S��^�^�S��=N�=N�O�P�P�G��l�C�
57  �O�O�S��^�^�S��=N�=N�O�P�P�G�'���
58  �I�|�\�\��	�	�7�	#�	#�B�	�	�7�	#�	#�B�*�&�-��)�)�2�r�(�3�3�K��{�L�*�=�=�K�
Q�F�M�"�f��B�u�I�I�hj�kp�hq�hq�|B�IP�
Q�
Q�
Q�R]�
^�
^�E�D�v�~�g�A�O�D�D�D�U�K�K�H��f�n���x�(�(�G�
@�V�\�#�&�x�
@�
@�
@��
I�
I�F�
?�V�\�"��h�
?�
?�
?��
G�
G�F�G�6�<��i�h�G�G�G��O�O�L��k�'�7�!3�\�Pi�j�j�j�G��Nr)rrr)�architectures.branchrrr�
59  tensorflowr
60  r�tensorflow.kerasr�keras.regularizersrrrHrOrYrzr��rr�<module>r�s���F�F�F�F�F�F�F�F�F�F�����������#�#�#�#�#�#�!�!�!�!�!�!����
61  ����4����4����:���068�2�TU�df�tu�wy�sz������r