A microwave oven comprising: a cavity configured to accept a food item for heating, the cavity providing an array of positions (50a, 50b,... 50 n) at which the food item can be placed; an infrared sensor comprising an array of pixels (62a, 62b,... 62 n), each pixel (62 n) configured to generate an output and each pixel (62 n) corresponding to a different position (50 n) of the array of positions (50a, 50b,... 50 n) of the cavity; a human-machine interface configured to provide an instruction to a user; and a controller in communication with the infrared sensor and the human-machine interface, the controller configured: (i) to determine a temperature at each position (50 n) of the array of positions (50a, 50b,... 50 n) of the cavity as a function of the output of each pixel (62 n) of the array of pixels (62a,62b,...62n); characterized in that the controller is further configured: (ii) to recognize a rise and fall in the temperature at one or more positions (50a, 50b,... 50 n) of the array of positions (50a, 50b,... 50 n) within the cavity; (iii) to estimate the position or positions (50a, 50b,... 50 n) of the array of positions (50a, 50b,... 50 n) within the cavity that the food item occupies as a function of the one or more positions (50a, 50b,... 50 n) of the array of positions (50a, 50b,... 50 n) within the cavity where the controller recognized a rise and fall in temperature occurred; and (iv) to determine whether the position (50 n) or positions (50a, 50b,... 50n) that the food item is estimated to occupy is adequate for the controller to determine accurately a temperature of the food item during an automatic heating operation that utilizes the infrared sensor. a cavity configured to accept a food item for heating, the cavity providing an array of positions (50a, 50b,... 50 n) at which the food item can be placed; an infrared sensor comprising an array of pixels (62a, 62b,... 62 n), each pixel (62 n) configured to generate an output and each pixel (62 n) corresponding to a different position (50 n) of the array of positions (50a, 50b,... 50 n) of the cavity; a human-machine interface configured to provide an instruction to a user; and a controller in communication with the infrared sensor and the human-machine interface, the controller configured: (i) to determine a temperature at each position (50 n) of the array of positions (50a, 50b,... 50 n) of the cavity as a function of the output of each pixel (62 n) of the array of pixels (62a,62b,...62n); (i) to determine a temperature at each position (50 n) of the array of positions (50a, 50b,... 50 n) of the cavity as a function of the output of each pixel (62 n) of the array of pixels (62a,62b,...62n); (ii) to recognize a rise and fall in the temperature at one or more positions (50a, 50b,... 50 n) of the array of positions (50a, 50b,... 50 n) within the cavity; (iii) to estimate the position or positions (50a, 50b,... 50 n) of the array of positions (50a, 50b,... 50 n) within the cavity that the food item occupies as a function of the one or more positions (50a, 50b,... 50 n) of the array of positions (50a, 50b,... 50 n) within the cavity where the controller recognized a rise and fall in temperature occurred; and (iv) to determine whether the position (50 n) or positions (50a, 50b,... 50n) that the food item is estimated to occupy is adequate for the controller to determine accurately a temperature of the food item during an automatic heating operation that utilizes the infrared sensor.