The problem is that you use wrong ACF function.
get_field_object
returns the settings of a specific field. Each field contains many settings such as a label, name and type. This function can be used to load these settings as an array along with the field’s value.
So get_field_object(\'icon\')[\'ID\'])
doesn\'t return the ID of image attachment, but ID of that ACF field.
What you want to use is:
$var = get_children(array(
\'exclude\' => array(
get_post_thumbnail_id(),
get_field(\'icon\')
)
));
If your field returns the ID of selected image, or
$image = get_field(\'icon\');
$var = get_children(array(
\'exclude\' => array(
get_post_thumbnail_id(),
$image[\'ID\']
)
));
if it returns an array.
More on get_field
for Image field