support other data types for image