The three problems hidden inside one calorie estimate
First, the system must identify each food. Second, it must estimate volume or weight from a two-dimensional image. Third, it must connect the estimate to an appropriate nutrition record. An error at any stage affects the final calories and macros.
A model may recognize “pasta” correctly but miss oil, cheese, sauce, or the difference between cooked and dry weight. It may identify chicken while estimating a portion that is twice the actual mass.