1. A method for performing a color based white balance of a digital image, the method comprises: generating or receiving multiple candidates, wherein each candidate of the multiple candidates is an information unit that represents color information of a pixel area of the digital image, wherein each candidate has a chromaticity value pair; finding a plurality of selected candidates out of the multiple candidates; wherein each selected candidate represents a pixel area of the digital image and has a chromaticity value pair that falls within at least one color gamut out of a group of color gamut of different colors; wherein the different colors comprise at least one color that differs from gray; wherein the plurality of selected candidates comprises (a) at least one selected candidate that falls within a gray color gamut and (b) at least one other selected candidate that falls within a second color gamut of a second color that differs from gray; calculating a color candidate for each color gamut of the group of color gamut of different colors; mapping at least one color candidate of at least one non-gray gamut onto the gray color gamut to provide at least one mapped candidate; calculating at least one white balance compensation parameter in response to color information of pixels areas represented by the plurality of selected candidates and in response to the at least one mapped candidate; and providing a compensated digital image by applying the at least one white balance compensation parameter on the digital image.