Preprocessing image data for deep networks

1. What type of preprocessing should we perform on image data to prepare them for deep networks?

2. What preprocessing is redundant in that it will be learned by the model anyway?

3. Do we perform the same preprocessing on the test data?


1 Response to “Preprocessing image data for deep networks”

  1. 1 Gabriel Bernier-Colborne February 21, 2013 at 15:23

    Q1: Many types of preprocessing may be used with image data. The general goal is to eliminate variances that are not relevant to the task at hand. For example, contrast normalization (which can be global or local) will eliminate some of the variance introduced by lighting, as will LBP.

    Other preprocessing techniques include:
    – Standardization (learning-based, as opposed to contrast normalization, which can be applied on-the-fly)
    – PCA or ZCA (to make features linearly decorrelated from each other)
    – Whitening (similar to PCA)
    – SIFT-type features (also SURF, HOG and GIST, as well Haar wavelets)

    Q2: Some preprocessing techniques, namely those that are a linear function of the input (whitening, standardization, ZCA), may be considered redundant, but using preprocessing may be more efficient for numerical reasons (e.g. to make the ranges more reasonable).

    Q3: We apply the same preprocessing to the test data if the preprocessing is not learning-based. If it is, it depends on the data: if the test data is quite different from the training data, it is likely better to retrain the preprocesser on the test data.

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: