Images: Difference between revisions

From 太極
Jump to navigation Jump to search
 
(21 intermediate revisions by the same user not shown)
Line 9: Line 9:
== StockAI ==
== StockAI ==
https://www.stockai.com/ Free AI-generated stock photos
https://www.stockai.com/ Free AI-generated stock photos
= Anti-alias =
* [https://www.howtogeek.com/73704/what-is-anti-aliasing-and-how-does-it-affect-my-photos-and-images/ What Is Anti-Aliasing, and How Does It Affect My Photos and Images?]
* [https://stackoverflow.com/questions/6023179/anti-aliasing-in-r-graphics-under-windows-as-per-mac Anti-aliasing in R graphics under Windows (as per Mac)]


= Convert a color image to black and white/grayscale =
= Convert a color image to black and white/grayscale =
Line 33: Line 29:
== GUI ==
== GUI ==
[https://itsfoss.com/converter-tool/ Convert and Manipulate Images With ‘Converter’ GUI Tool in Linux]
[https://itsfoss.com/converter-tool/ Convert and Manipulate Images With ‘Converter’ GUI Tool in Linux]
= Free-to-Use Image-Editing Apps for Linux =
[https://www.makeuseof.com/best-free-image-editing-apps-for-linux/ The Top 9 Free-to-Use Image-Editing Apps for Linux]


= Install/build the latest imagemagick =
= Install/build the latest imagemagick =
Line 102: Line 101:
convert my-image.jpg -colorspace Gray -depth 2 my-image-gray.jpg  
convert my-image.jpg -colorspace Gray -depth 2 my-image-gray.jpg  
</pre>
</pre>
= Create sprite/pixel art =
* [https://www.piskelapp.com/p/create/sprite Piskel]
* [https://www.pixilart.com/draw Pixilart]


= Convert an image to a different resolution/pixel size =
= Convert an image to a different resolution/pixel size =
Line 108: Line 111:
convert image.jpg -resize 1024x768\! output_file.jpg
convert image.jpg -resize 1024x768\! output_file.jpg
</pre>
</pre>
== Anti-alias 修邊 ==
* The prefix “anti-” in “antialiasing” means “against” or “opposite of”. So, “antialiasing” refers to the technique that is used to counter or prevent the effect of aliasing. '''Aliasing is a problem that causes different signals to become indistinguishable (or aliases of one another) when sampled. It often occurs in computer graphics when representing a high-resolution signal at a lower resolution. '''  Anti-aliasing serves a simple purpose — fixing these jagged edges that show up in games and other computer graphics.
* [https://www.howtogeek.com/73704/what-is-anti-aliasing-and-how-does-it-affect-my-photos-and-images/ What Is Anti-Aliasing, and How Does It Affect My Photos and Images?]
* [https://stackoverflow.com/questions/6023179/anti-aliasing-in-r-graphics-under-windows-as-per-mac Anti-aliasing in R graphics under Windows (as per Mac)]
* [https://www.geeksforgeeks.org/antialiasing/# What is Anti-aliasing?]
** Methods of Anti-Aliasing (AA)
** Types of Anti-Aliasing
** Applications of Anti-Aliasing Techniques
* How to turn on anti-aliasing in games. [https://www.digitaltrends.com/computing/what-is-anti-aliasing/ What is anti-aliasing? MSAA, FXAA, TAA, and more explained]
== Upscayl: AI Image Upscaler ==
https://www.upscayl.org/ Upscayl helps you turn low resolution images into high resolution. Crisp and sharp! No internet required. 5+ Modes. Fully Customizable. Free and Open Source.


= Convert an image file to a different format (eg icon) =
= Convert an image file to a different format (eg icon) =
Line 157: Line 173:
convert -delay 200 -loop 0 file_1.png file_2.png file_3.png animated.gif
convert -delay 200 -loop 0 file_1.png file_2.png file_3.png animated.gif
</syntaxhighlight>
</syntaxhighlight>
= Creating a GIF from images/videos =
[https://lifehacker.com/tech/the-best-ways-to-make-your-own-gifs The Best Ways to Make Your Own GIFs]


= Convert Video to GIF =
= Convert Video to GIF =
Line 175: Line 194:


= Background =
= Background =
== Change white to transparent background ==
[https://stackoverflow.com/a/11115408 Set transparent background using ImageMagick and commandline prompt] (it works)
<pre>
convert test.png -transparent white transparent.png
</pre>
== Replace transparency in PNG images with white background ==
== Replace transparency in PNG images with white background ==
http://stackoverflow.com/questions/2322750/replace-transparency-in-png-images-with-white-background
http://stackoverflow.com/questions/2322750/replace-transparency-in-png-images-with-white-background
Line 180: Line 206:
convert image.png -background white -alpha remove white.png
convert image.png -background white -alpha remove white.png
</syntaxhighlight>
</syntaxhighlight>
== Adobe lightroom ==
* [https://www.makeuseof.com/adobe-lightroom-how-to-blur-photo-background/ How to Blur a Photo Background in Adobe Lightroom]
* [https://www.linuxlinks.com/best-free-open-source-alternatives-adobe-lightroom-classic/ Best Free and Open Source Alternatives to Adobe Lightroom Classic]


== Online tools to remove background ==
== Online tools to remove background ==
https://www.magiceraser.io/
* https://www.magiceraser.io/
* photoroom.com


== Automatic background removal using R ==
== Automatic background removal using R ==
Line 188: Line 219:


= Remove unwanted objects =
= Remove unwanted objects =
[https://github.com/Sanster/lama-cleaner Lama Cleaner] - A free and open-source inpainting tool powered by SOTA AI model
* https://cleanupphotos.com/.
** Download a video frame from YT. Open GIMP - New. Accept the default image size. Ctrl + v to paste the image from the clipboard. Choose "Image" -> "Crop to Content". Export to PNG.
** I uploaded a png file. The saved file cannot be opened (Fatal error reading PNG image file: Not a PNG file). After I manually changed the extension to jpg and it works. The resolution of the saved image file is decreased however.
* [https://github.com/Sanster/lama-cleaner Lama Cleaner] - A free and open-source inpainting tool powered by SOTA AI model
* [https://youtu.be/Anvr8tR3shM 切勿错过!终于在GitHub上找到10个超强悍的开源软件和免费项目!] | 零度解说. Lama Cleaner, Misskey, StockAI, NBlog, AutoCut, Pake, Fyrox, Tooll 3, SMSBoom, Flarum.


= Remove GPS metadata from jpg files - [http://www.sno.phy.queensu.ca/~phil/exiftool/ exiftool] =
= Remove GPS metadata from jpg files - [http://www.sno.phy.queensu.ca/~phil/exiftool/ exiftool] =
Line 218: Line 253:
</pre>
</pre>
</ul>
</ul>
== Error: Failed to get connection ==
<pre>
inkscape -C --export-type=png input.svg --export-filename=output.png
# OR
inkscape -C  input.svg --export-filename=output.png
</pre>
I got an error when I tested on headless system https://bugs.launchpad.net/inkscape/+bug/1460797. Either command works, however, in a desktop system.
So inkscape in a headless system is not possible!


== Edit Svg image ==
== Edit Svg image ==
Line 247: Line 293:
[https://www.makeuseof.com/adobe-indesign-vs-illustrator/ Adobe InDesign vs. Illustrator: Which One Should You Use?]
[https://www.makeuseof.com/adobe-indesign-vs-illustrator/ Adobe InDesign vs. Illustrator: Which One Should You Use?]


= Display images in the terminal =
= Display images in a terminal =
[https://www.ostechnix.com/how-to-display-images-in-the-terminal/ Using FIM]
<ul>
<li>[https://github.com/stefanhaustein/TerminalImageViewer tiv]/Terminal Image Viewer contains a mall C++ program. It works when I tested on a Ubuntu 22.04 box. I am using the commit version 7573de8 12/6/2023.
<syntaxhighlight lang='sh'>
git clone https://github.com/stefanhaustein/TerminalImageViewer.git
 
g++ --version
cd TerminalImageViewer/src
make
sudo make install
 
tiv myimage.png
</syntaxhighlight>
[[File:Tiv-demo.png|200px]]
<li>[https://www.ostechnix.com/how-to-display-images-in-the-terminal/ Using FIM]
</ul>


= Design =
= Design =
[https://www.howtogeek.com/679988/how-to-use-canva-to-design-like-a-professional/ How to Use Canva to Design Like a Professional]
* [https://www.howtogeek.com/679988/how-to-use-canva-to-design-like-a-professional/ How to Use Canva to Design Like a Professional]
* [https://www.pcworld.com/article/2177265/canva-the-best-5-tips-tricks-for-beginners.html Canva: The best 5 tips & tricks for beginners]


== Logos ==
== Logos ==
Line 259: Line 320:
* [https://itsfoss.com/photocollage-linux/ Easily Make Collages in Linux With PhotoCollage and Mountain Tapir Apps]
* [https://itsfoss.com/photocollage-linux/ Easily Make Collages in Linux With PhotoCollage and Mountain Tapir Apps]
* [https://github.com/adrienverge/PhotoCollage PhotoCollage]
* [https://github.com/adrienverge/PhotoCollage PhotoCollage]
= Recognize a doodling =
* quickdraw.withgoogle.com
* scribblediffusion.com


= OCR =
= OCR =
Line 264: Line 329:
* [https://itsfoss.com/gimagereader-ocr/ Use gImageReader to Extract Text From Images and PDFs on Linux]
* [https://itsfoss.com/gimagereader-ocr/ Use gImageReader to Extract Text From Images and PDFs on Linux]
* [https://www.cisdem.com/resource/best-chinese-ocr-software.html 6 Best Chinese OCR App to Recognize Chinese Characters (Online Incl.)] '''Google Drive''' can do it too (not perfect from my testing).
* [https://www.cisdem.com/resource/best-chinese-ocr-software.html 6 Best Chinese OCR App to Recognize Chinese Characters (Online Incl.)] '''Google Drive''' can do it too (not perfect from my testing).
* [https://youtu.be/sAACv-QqXSU TextSnatcher - Amazoin, OPen Source, OCR for you Linux Desktop!] , [https://github.com/RajSolai/TextSnatcher Github]


= iOS =
= iOS =
[https://www.rd.com/article/how-to-edit-photos-on-iphone/ How to Edit Photos on Your iPhone Using the Photos App]: crop, change the aspect ratio of a photo, rotate a photo, make a mirror image of a photo, select frames from Live Photos, change a photo’s filter, Change the exposure, Adjust the brilliance, Adjust highlights, Adjust shadows, Create contrast, Brighten the photo, Enhance the colors (Adjust saturation, Adjust vibrancy)
[https://www.rd.com/article/how-to-edit-photos-on-iphone/ How to Edit Photos on Your iPhone Using the Photos App]: crop, change the aspect ratio of a photo, rotate a photo, make a mirror image of a photo, select frames from Live Photos, change a photo’s filter, Change the exposure, Adjust the brilliance, Adjust highlights, Adjust shadows, Create contrast, Brighten the photo, Enhance the colors (Adjust saturation, Adjust vibrancy)

Latest revision as of 15:54, 17 April 2024

File formats

Explaining Image File Formats (video)

Note we can compress files before we share them/upload to web servers.

Free images

https://unsplash.com/

StockAI

https://www.stockai.com/ Free AI-generated stock photos

Convert a color image to black and white/grayscale

$ convert filename.jpg -canny 0x1 -negate canny.jpg
convert.im6: unrecognized option `-canny' @ error/convert.c/ConvertImageCommand/1107.

$ convert filename.jpg +clone +level-colors gray,white -background black -alpha remove -colorspace Gray canny.jpg

$ convert filename.jpg -monochrome canny.jpg

$ convert filename.jpg -colorspace Gray canny.jpg  # Best

The current imagemagick version is 7.0.7-15.

GUI

Convert and Manipulate Images With ‘Converter’ GUI Tool in Linux

Free-to-Use Image-Editing Apps for Linux

The Top 9 Free-to-Use Image-Editing Apps for Linux

Install/build the latest imagemagick

# remove version installed with apt-get
sudo apt-get remove imagemagick && sudo apt-get autoremove

# install dependencies
sudo apt-get install build-essential
sudo apt-get build-dep imagemagick -y

# download ImageMagick source
wget http://www.imagemagick.org/download/ImageMagick.tar.gz
tar xzvf ImageMagick.tar.gz

# build source
cd ImageMagick-*
./configure
make

# install and verify
sudo make install
sudo ldconfig /usr/local/lib

sudo checkinstall

**********************************************************************

 Done. The new package has been installed and saved to

 /home/XXX/Downloads/ImageMagick-7.0.7-15/imagemagick-7.0.7_15-1_amd64.deb

 You can remove it from your system anytime using: 

      dpkg -r imagemagick-7.0.7

**********************************************************************

$ convert --version
# bash: /usr/bin/convert: No such file or directory

$ which convert
/usr/local/bin/convert
$ whereis convert
convert: /usr/local/bin/convert
$ /usr/local/bin/convert -version
Version: ImageMagick 7.0.7-15 Q16 x86_64 2017-12-20 http://www.imagemagick.org
Copyright: © 1999-2018 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Features: Cipher DPC HDRI OpenMP 
Delegates (built-in): bzlib fontconfig freetype jbig jng jpeg lzma pangocairo png tiff x xml zlib

Convert an image to sketch (online tool)

convert my-image.jpg -colorspace Gray my-image-gray.jpg
# OR
convert <img_in> -set colorspace Gray -separate -average <img_out>

To convert into a 2-bit image

convert my-image.jpg -colorspace Gray -depth 2 my-image-gray.jpg 

Create sprite/pixel art

Convert an image to a different resolution/pixel size

A few basic (but powerful) ImageMagick commands

convert image.jpg -resize 1024x768\! output_file.jpg

Anti-alias 修邊

Upscayl: AI Image Upscaler

https://www.upscayl.org/ Upscayl helps you turn low resolution images into high resolution. Crisp and sharp! No internet required. 5+ Modes. Fully Customizable. Free and Open Source.

Convert an image file to a different format (eg icon)

Make an icon using GIMP

How to Make an Icon for Windows 10 or 11 Out of Any Image

Crop an image

Rotate an image

http://www.imagemagick.org/script/command-line-options.php#rotate

convert winamp-ncrow.png -rotate 45 winamp-ncrow2.png  # 45 degrees

One problem with this simple approach is the picture size (not image file) changed (become smaller) if the degree is not one of 90,180 or 270.

Create an animated gif file

Use the script here. See the last example on here. The rotation speed looks good too! Just change the source image file in the script.

#!/bin/sh
#
# Create a rotating figure using Distort SRT transformations
#
command='convert -delay 10 koala.gif -virtual-pixel white'

for i in `seq 5 5 360`; do
  command="$command \\( -clone 0 -distort SRT $i \\)"
done

command="$command -delete 0 -loop 0 animate_distort_rot.gif"

eval $command

chmod 644 animate_distort_rot.gif

Tool to convert a sequence of numbered PNG files to an animated GIF?. Convert command line option. The option '-loop 0' means repeats infinitely and '-delay 200' means 2 seconds delay between each frame.

convert -delay 200 -loop 0 file_1.png file_2.png file_3.png animated.gif

Creating a GIF from images/videos

The Best Ways to Make Your Own GIFs

Convert Video to GIF

The Best Ways to Convert Video to GIF

HDR/High Dynamic Range

How to Create Fake High Dynamic Range Photos in Photoshop

R packages

Annotate jpeg/png file

See graphics::rasterImage()

Edit gif file

gifsicle package

Background

Change white to transparent background

Set transparent background using ImageMagick and commandline prompt (it works)

convert test.png -transparent white transparent.png

Replace transparency in PNG images with white background

http://stackoverflow.com/questions/2322750/replace-transparency-in-png-images-with-white-background

convert image.png -background white -alpha remove white.png

Adobe lightroom

Online tools to remove background

Automatic background removal using R

Image segmentation in R: Automatic background removal like in a Zoom conference

Remove unwanted objects

  • https://cleanupphotos.com/.
    • Download a video frame from YT. Open GIMP - New. Accept the default image size. Ctrl + v to paste the image from the clipboard. Choose "Image" -> "Crop to Content". Export to PNG.
    • I uploaded a png file. The saved file cannot be opened (Fatal error reading PNG image file: Not a PNG file). After I manually changed the extension to jpg and it works. The resolution of the saved image file is decreased however.
  • Lama Cleaner - A free and open-source inpainting tool powered by SOTA AI model
  • 切勿错过!终于在GitHub上找到10个超强悍的开源软件和免费项目! | 零度解说. Lama Cleaner, Misskey, StockAI, NBlog, AutoCut, Pake, Fyrox, Tooll 3, SMSBoom, Flarum.

Remove GPS metadata from jpg files - exiftool

sudo apt-get install libimage-exiftool-perl
exiftool -gps:all= -xmp:geotag= image.jpg

The image file will be updated. To check the current metadata, use

exiftool image.jpg | grep GPS

Note that the above command only remove gps information. The other information like date/time of creation, camera model are not changed.

Exitftool can also be used to edit the metadata on PDF files.

exiftool -Title="This is the Title" -Author="Happy Man" -Subject="PDF Metadata" drawing.pdf

An R package exifr also available on CRAN.

Inkscape

Error: Failed to get connection

inkscape -C --export-type=png input.svg --export-filename=output.png
# OR
inkscape -C  input.svg --export-filename=output.png

I got an error when I tested on headless system https://bugs.launchpad.net/inkscape/+bug/1460797. Either command works, however, in a desktop system.

So inkscape in a headless system is not possible!

Edit Svg image

Stitch

MAKE MORE with Inkscape – Ink/Stitch

Animated gif

Hue/saturation

What’s the Difference between Illustrator and Photoshop

What’s the Difference between Illustrator and Photoshop?

Adobe InDesign vs. Illustrator

Adobe InDesign vs. Illustrator: Which One Should You Use?

Display images in a terminal

  • tiv/Terminal Image Viewer contains a mall C++ program. It works when I tested on a Ubuntu 22.04 box. I am using the commit version 7573de8 12/6/2023.
    git clone https://github.com/stefanhaustein/TerminalImageViewer.git
    
    g++ --version
    cd TerminalImageViewer/src
    make
    sudo make install
    
    tiv myimage.png

    Tiv-demo.png

  • Using FIM

Design

Logos

The 4 Best Websites to Create a Logo for Your Business

Collage

Recognize a doodling

  • quickdraw.withgoogle.com
  • scribblediffusion.com

OCR

iOS

How to Edit Photos on Your iPhone Using the Photos App: crop, change the aspect ratio of a photo, rotate a photo, make a mirror image of a photo, select frames from Live Photos, change a photo’s filter, Change the exposure, Adjust the brilliance, Adjust highlights, Adjust shadows, Create contrast, Brighten the photo, Enhance the colors (Adjust saturation, Adjust vibrancy)