How to add custom field to image area where Alt and Title fields are showing?
I put element in IF condition in MYMODULE_image_field_widget_process and it works fine.
What it does is, it checks for ALT attribute if it is ENABLED so it will then add the CUSTOM field, you can instead add the CUSTOM field visibility option in image setting page and check for that.

function MYMODULE_image_field_widget_process($element, &amp;$form_state, $form) {
   if ($element['alt']['#access']) { // IF condition added here
      $element['custom'] = array(
        '#title' =&gt; t('Custom Field'),
        '#type' =&gt; 'textfield',
        '#default_value' =&gt; isset($item['custom']) ? $item['custom'] : '',
        '#weight' =&gt; 1,
      );
   }
   return $element;
}