The WooCommerce Product Add-Ons Ultimate plugin allows you to add color picker input fields to your WooCommerce product. Users can select an exact hex color value from a graphical palette. There’s a demo product here.
(If you just want to add color swatches, see this article).

To add a color picker field, just choose ‘Color Picker’ from the ‘Field Type’ dropdown list.

Color Picker fields have some specific settings. Click on the ‘Color picker’ tab to access them.

Default color
Define a default color to display when the product page loads.
Element width
You can define a custom width in pixels for the color picker palette (leave blank for the default).
Show by default
Enable this option to display the color palette by default when the product page loads.
Display common palettes
Enable this option to display a row of common color palettes below the color picker.