Reduct image size Ubuntu terminal

To reduce the size of a JPG image on Ubuntu (from MB to KB), you can use the convert command from the ImageMagick package. Here's how to do it:

Install ImageMagick

If it's not already installed, you can install it using:

bash
sudo apt update sudo apt install imagemagick

Reduce Image Size

Use the following command to compress the image:

bash
convert input.jpg -quality 75 output.jpg

Explanation:

  • input.jpg: The original image file.
  • -quality 75: Sets the compression level (1–100). Lower values reduce file size but can decrease image quality.
  • output.jpg: The compressed image.

Additional Options for Further Size Reduction:

  1. Resize the image to smaller dimensions:

    bash
    convert input.jpg -resize 50% output.jpg

    This reduces the width and height by half.

  2. Specify exact dimensions:

    bash
    convert input.jpg -resize 800x600 output.jpg

    Replace 800x600 with your desired resolution.

  3. Strip metadata to save space:

    bash
    convert input.jpg -strip -quality 75 output.jpg

Check the Resulting File Size

Use ls to verify the new file size:

bash
ls -lh output.jpg

Automating the Process for Multiple Files

To compress all JPG files in a directory:

bash
for img in *.jpg; do convert "$img" -quality 75 "compressed_$img" done
-------------------

Query: my jpg size 2.8-3.1 MB, I wn it to be in kb. how to do using convert as sbove. I used command
convert input.jpg -quality 75 output.jpg but output is of size 1.2-1.7 MB
ChatGPT said:

To further reduce the size of your .jpg images (from MB to KB), you can tweak the parameters for the convert command. Here’s how:

1. Lower the Quality Even More

Try reducing the quality percentage further (e.g., 50 or 30):

bash
convert input.jpg -quality 50 output.jpg

2. Resize the Image Dimensions

If reducing the quality alone isn’t enough, resize the image dimensions (e.g., to 50% of its original size):

bash
convert input.jpg -resize 50% -quality 50 output.jpg

You can also specify exact dimensions, such as:

bash
convert input.jpg -resize 800x600 -quality 50 output.jpg

3. Use Strip Metadata

Images often contain metadata (EXIF, GPS info, etc.) that can increase file size. Use the -strip option to remove unnecessary metadata:

bash
convert input.jpg -strip -quality 50 output.jpg

4. Combine All Options

To maximize compression, combine resizing, quality reduction, and metadata stripping:

bash
convert input.jpg -resize 800x600 -strip -quality 30 output.jpg

5. Verify the Output

After running the commands, check the file size:

bash
ls -lh output.jpg

Let me know if you need further fine-tuning!

----------------------

No comments:

Post a Comment

If you have any doubts, please let me know.

Regarding site Free Browser Tool (https://free-browser-tools.mohitkrgupta.dev) (discussion with google search AI)

Various discussions with Google Search AI regarding site  Free Browser Tool are as below: site free-browser-tools.mohitkrgupta.dev what doe...