Điểm:0

Làm cách nào để xem trước hình ảnh JP2 và J2K trên Nautilus và Nemo?

lá cờ dk

Tôi có một số JPEG-2000 .jp2.j2k hình ảnh mà tôi muốn xem trước trên Nautilus hoặc Nemo. Làm cách nào tôi có thể yêu cầu người quản lý tệp tạo hình thu nhỏ cho những tệp đó?

Điểm:0
lá cờ dk

Một số phương pháp để xem trước hình ảnh JPEG-2000 hoạt động trên Nautilus, Nemo và Caja.

Cách 1: Sử dụng opj_decompress


  1. Cài đặt công cụ libopenjp2

    sudo apt cài đặt công cụ libopenjp2
    

    Gói này đi kèm với các công cụ và codec cần thiết để chuyển đổi hình ảnh JP2 và J2K thành hình thu nhỏ PNG, cụ thể là opj_decompress, opj_dump, và libopenjp2-7.

    Ghi chú:

    • công cụ libopenjp2 không khả dụng trên Ubuntu 14.10 trở về trước.
    • Nếu bạn đang dùng Ubuntu 18.04 trở lên, bạn có thể phải cài đặt libgdk-pixbuf2.0-bin (thường được cài đặt sẵn):
      sudo apt cài đặt libgdk-pixbuf2.0-bin
      
      Gói này cung cấp gdk-pixbuf-thumbnailer sẽ được sử dụng để thay đổi kích thước PNG được tạo bởi opj_decompress sang kích thước phù hợp hơn cho hình thu nhỏ.
  2. Nhận được loại kịch câm của hình ảnh JP2 và J2K

    • Nhấp chuột phải vào hình ảnh JP2 hoặc J2K, chọn Tính chất.
    • trên Căn bản tab, hãy lưu ý những gì trong ngoặc đơn cho Loại cánh đồng. Trong trường hợp của tôi (Ubuntu 20.04), đó là hình ảnh/jp2 đối với hình ảnh JP2 và hình ảnh/x-jp2-dòng mã đối với hình ảnh J2K và J2C.

    Ngoài ra, bạn có thể sử dụng xdg-mime để có được những loại kịch câm này. Ví dụ, nếu bạn có ví dụ.jp2ví dụ.j2k Trong ~/Hình ảnh, đưa ra các lệnh sau:

    kiểu tệp truy vấn xdg-mime ~/Pictures/example.jp2
    loại tệp truy vấn xdg-mime ~/Pictures/example.j2k
    
  3. Tạo một tập lệnh thu nhỏ đối với hình ảnh JP2 và J2K

    • Tạo một tệp có tên jp2-thumbnailer-bin Trong /usr/local/bin:
      Sudo nano /usr/local/bin/jp2-thumbnailer-bin
      
    • Sao chép tập lệnh sau (dựa trên phương thức từ cái này) vào tệp (sử dụng Điều khiển+C để sao chép và Điều khiển+Sự thay đổi+V để dán vào nano cửa sổ):
      #!/bin/bash
      
      sInFile="$1"
      nThumbSize="$2"
      sOutFile="$3"
      
      # Lấy kích thước của hình ảnh đầu vào
      sInfo="$(opj_dump -i "$sInFile")"
      sSize="$(echo "$sInfo" | grep x1 | sed -r 's|.*x1=(.*), y1=(.*)|\1\t\2|')"
      nWidth="$(echo "$sSize" | cut --fields=1)"
      nHeight="$(echo "$sSize" | cut --fields=2)"
      
      # Lấy kích thước lớn của hình ảnh đầu vào
      if((nWidth>nHeight)); sau đó
          nLargeSize="$nWidth"
      khác
          nLargeSize="$nHeight"
      fi
      
      # Tạo hình thu nhỏ đầu ra;
      # Hình ảnh lớn hơn kích thước hình thu nhỏ mặc định (256x256 hoặc
      # 128x128 pixel) được thu nhỏ lại để kích thước lớn của chúng
      # tối đa là 256 hoặc 128 pixel. Điều này làm giảm đáng kể
      # thời gian tạo hình thu nhỏ.
      if((nLargeSize<=nThumbSize)); sau đó
          /usr/bin/opj_decompress -i "$sInFile" -o "$sOutFile".png
      khác
          nResolutions="$(echo "$sInfo" | grep numresolutions | cut --delimiter='=' --fields=2 | sắp xếp --General-numeric-sort | sed 1q)"
          nReduce="$(echo "f=l($nLargeSize/$nThumbSize)/l(2);scale=0;f/1" | bc -l)"
          if((nReduce<nResolutions)); sau đó
              nReduceFactor="$nReduce"
          khác
              nReduceFactor="$((nResolutions-1))"
          fi
          /usr/bin/opj_decompress -i "$sInFile" -r "$nReduceFactor" -o "$sOutFile".png
      fi
      nếu [[ -e /usr/bin/gdk-pixbuf-thumbnailer ]]; sau đó
          /usr/bin/gdk-pixbuf-thumbnailer -s "$nThumbSize" "$sOutFile".png "$sOutFile"
          rm "$sOutFile".png
      khác
          mv "$sOutFile".png "$sOutFile"
      fi
      
    • Nhấn Điều khiển+Ôđi vào để lưu tệp và Điều khiển+X để thoát nano và quay trở lại thiết bị đầu cuối.
    • Tiếp theo, làm cho tệp có thể thực thi được với:
      Sudo chmod +x /usr/local/bin/jp2-thumbnailer-bin
      

    Ghi chú: Nếu bạn sử dụng Nemo hoặc Caja, bạn thực sự có thể đặt tập lệnh ở đâu đó trong thư mục chính của mình (ví dụ: ~/.local/bin) và chạy các lệnh như trên mà không cần sudo. Tuy nhiên, nếu bạn sử dụng Nautilus, bạn chỉ có thể làm như vậy nếu libgnome-máy tính để bàn được sử dụng bởi Nautilus cũ hơn 3.28.2. Để lấy số phiên bản của libgnome-máy tính để bàn, ra lệnh này:

    danh sách apt --đã cài đặt | grep libgnome-máy tính để bàn | cắt -d ' ' -f 2 | cắt -d '-' -f 1
    
  4. Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K

    • Đầu tiên, tạo một thư mục có tên hình thu nhỏ Trong ~/.local/share.
      mkdir -p ~/.local/share/thumbnailers
      
    • Tạo một tệp có tên jp2.thumbnailer trong thư mục đó.
      nano ~/.local/share/thumbnailers/jp2.thumbnailer
      
    • Sao chép những dòng này vào tệp (sử dụng Điều khiển+C sao chép, Điều khiển+Sự thay đổi+V để dán vào nano cửa sổ):
      [Bài viết thu nhỏ]
      Exec=/usr/local/bin/jp2-thumbnailer-bin %i %s %o
      MimeType=image/jp2;image/x-jp2-codestream;
      
    • Nhấn Điều khiển+Ôđi vào để lưu tệp và Điều khiển+X để thoát nano.

    Ghi chú:

    • Đặt các loại mime được tìm thấy trước đó trong dòng thứ ba được liệt kê ở trên (các Loại kịch câm Chìa khóa); tách từng loại mime bằng dấu chấm phẩy (;) và tùy ý kết thúc dòng bằng dấu chấm phẩy.
    • Nếu bạn muốn hình thu nhỏ cho hình ảnh JP2 và J2K có sẵn cho tất cả người dùng, hãy đặt mục nhập hình thu nhỏ này vào /usr/share/hình thu nhỏ thay vì ~/.local/share/thumbnailers:
      sudo nano /usr/share/thumbnailers/jp2.thumbnailer
      
    • Một trình soạn thảo văn bản GUI như gedit hoặc cố định cũng có thể được sử dụng để tạo và chỉnh sửa mục nhập hình thu nhỏ. Tuy nhiên, nếu bạn định đặt nó trong /usr/share/hình thu nhỏ, sử dụng nanoRất khuyến khích.
  5. Bật hình thu nhỏ đối với hình ảnh JP2

    Trình quản lý tệp có thể vô hiệu hóa hình thu nhỏ cho hình ảnh JP2. Để kiểm tra xem đây có phải là trường hợp không, hãy đưa ra một trong các lệnh sau, tương ứng với Nautilus, Nemo và Caja:

    gsinstall bị vô hiệu hóa org.gnome.desktop.thumbnailers
    gsinstall bị vô hiệu hóa org.cinnamon.desktop.thumbnailers
    gsinstall bị vô hiệu hóa org.mate.thumbnailers
    

    Nếu kết quả là [] hoặc [''], thì trình quản lý tệp sẽ không tắt tính năng thu nhỏ cho bất kỳ loại tệp nào (và bạn có thể chuyển thẳng sang bước 6). Tuy nhiên, nếu kết quả là ['hình ảnh/jp2'], thì tính năng thu nhỏ cho hình ảnh JP2 sẽ bị tắt. Để kích hoạt lại nó, hãy đưa ra một trong các lệnh sau (tương ứng cho Nautilus, Nemo và Caja):

    gsettings đặt org.gnome.desktop.thumbnailers vô hiệu hóa "[]"
    gsettings đặt org.cinnamon.desktop.thumbnailers vô hiệu hóa "[]"
    gsettings đặt org.mate.thumbnailers tắt "[]"
    

    Ngoài ra, bạn có thể sử dụng trình soạn thảo dconf:

    • Đầu tiên, cài đặt trình soạn thảo dconf:
      Sudo apt cài đặt trình soạn thảo dconf
      
    • Mở trình soạn thảo dconf, sau đó đi đến một trong những nơi này (tương ứng với Nautilus, Nemo và Caja):
      • tổ chức â thần lùn â máy tính để bàn â hình thu nhỏ â vô hiệu hóa.
      • tổ chức â Quế â máy tính để bàn â hình thu nhỏ â vô hiệu hóa.
      • tổ chức â bạn â máy tính để bàn â hình thu nhỏ â vô hiệu hóa.
    • Tắt Sử dụng giá trị mặc định.
    • Thay đổi giá trị trong Giá trị tùy chỉnh hộp từ ['hình ảnh/jp2'] đến một trong hai [] hoặc [''].
    • Nhấp chuột Áp dụng ở góc dưới cùng bên phải và đóng trình soạn thảo dconf.
  6. Xóa các hình thu nhỏ được lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp

    • Đầu tiên, đóng hoàn toàn trình quản lý tệp bằng một trong các lệnh sau:
      nautilus -q
      nemo -q
      caja -q
      
    • Tiếp theo, xóa các hình thu nhỏ bị lỗi đã lưu trong bộ nhớ cache:
      rm -r ~/.cache/thumbnails/fail
      
    • Tùy chọn, xóa tất cả các hình thu nhỏ được lưu trong bộ nhớ cache (nếu trước đó bạn đã sử dụng các mục hoặc tập lệnh của trình thu nhỏ chưa được tối ưu hóa đã tạo các hình thu nhỏ lớn):
      rm -r ~/.cache/thumbnails/*
      
    • Cuối cùng, mở lại trình quản lý tệp. Hình ảnh JP2 và J2K sẽ có hình thu nhỏ ngay bây giờ.

Cách 2: Sử dụng đổi


đổi có thể được sử dụng để tạo hình thu nhỏ cho hình ảnh JP2 và J2K trên Ubuntu 14.04 hoặc Ubuntu 20.10 trở lên.

  1. Cài đặt ảo thuật hình ảnh trong đó cung cấp đổi dụng cụ

    Sudo apt cài đặt imagemagick
    
  2. Nhận được loại kịch câm ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 2)

  3. Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 4 để biết chi tiết)

    nội dung của ~/.local/share/thumbnailers/jp2.thumbnailer với đổi như chương trình thu nhỏ:

    [Bài viết thu nhỏ]
    Exec=/usr/bin/convert %i -thumbnail %sx%s png:%o
    MimeType=image/jp2;image/x-jp2-codestream;
    
  4. Bật hình thu nhỏ đối với ảnh JP2 (xem Sử dụng opj_decompress, bước 5)

  5. Xóa các hình thu nhỏ đã lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp (xem Sử dụng opj_decompress, bước 6)

Cách 3: Sử dụng gm


gm hỗ trợ hình ảnh JPEG-2000 trên Ubuntu 14.04 và 16.04.

  1. Cài đặt đồ họa trong đó cung cấp gm dụng cụ

    Sudo apt cài đặt graphicsmagick
    
  2. Nhận được loại kịch câm ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 2)

  3. Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 4 để biết chi tiết)

    nội dung của ~/.local/share/thumbnailers/jp2.thumbnailer với gm như chương trình thu nhỏ:

    [Bài viết thu nhỏ]
    Exec=/usr/bin/gm convert %i -thumbnail %sx%s png:%o
    MimeType=image/jp2;image/x-jp2-codestream;
    
  4. Bật hình thu nhỏ đối với ảnh JP2 (xem Sử dụng opj_decompress, bước 5)

  5. Xóa các hình thu nhỏ đã lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp (xem Sử dụng opj_decompress, bước 6)

Cách 4: sử dụng totem-video-thumbnailer


totem-video-thumbnailer có thể thu nhỏ hình ảnh JP2 và J2K trên Ubuntu 18.04 trở lên.

  1. Cài đặt vật tổgstreamer1.0-plugins-bad

    Sudo apt cài đặt totem gstreamer1.0-plugins-bad
    

    vật tổ cung cấp totem-video-thumbnailer, trong khi gstreamer1.0-plugins-bad đi kèm với các codec cần thiết bởi totem-video-thumbnailer để xử lý hình ảnh JP2 và J2K.

    Ghi chú: vật tổ là trình phát video mặc định trên máy tính để bàn GNOME nên nó được cài đặt sẵn trên Ubuntu. gstreamer1.0-plugins-badkhông phải được cài đặt sẵn, tuy nhiên, có lẽ bởi vì nó chỉ là một đề xuất gói cho vật tổ.

  2. Nhận được loại kịch câm ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 2)

  3. Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 4 để biết chi tiết)

    nội dung của ~/.local/share/thumbnailers/jp2.thumbnailer với totem-video-thumbnailer như chương trình thu nhỏ:

    [Bài viết thu nhỏ]
    Exec=/usr/bin/totem-video-thumbnailer -s %s %u %o
    MimeType=image/jp2;image/x-jp2-codestream;
    
  4. Bật hình thu nhỏ đối với ảnh JP2 (xem Sử dụng opj_decompress, bước 5)

  5. Xóa các hình thu nhỏ đã lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp (xem Sử dụng opj_decompress, bước 6)

Cách 5: Sử dụng ffmpeg


ffmpeg hỗ trợ hình ảnh JP2 và J2K trên Ubuntu 16.04 trở lên.

  1. Cài đặt ffmpeg

    Sudo apt cài đặt ffmpeg
    
  2. Nhận được loại kịch câm ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 2)

  3. Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 4 để biết chi tiết)

    nội dung của ~/.local/share/thumbnailers/jp2.thumbnailer với ffmpeg như chương trình thu nhỏ:

    [Bài viết thu nhỏ]
    Exec=/usr/bin/ffmpeg -y -i %i -filter scale=%s:%s:force_original_aspect_ratio=1 -f apng %o
    MimeType=image/jp2;image/x-jp2-codestream;
    
  4. Bật hình thu nhỏ đối với ảnh JP2 (xem Sử dụng opj_decompress, bước 5)

  5. Xóa các hình thu nhỏ đã lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp (xem Sử dụng opj_decompress, bước 6)

Tóm lược


Đã thử nghiệm trên â Ubuntu 14.04 Ubuntu 16.04 Ubuntu 18.04, 20.04; Linux Mint 20 Quế; Ubuntu MATE 20.04 Ubuntu 20.10, 21.04
opj_decompress không áp dụng âï¸ âï¸ âï¸
đổi âï¸ âï¸ âï¸ âï¸
gm âï¸ âï¸ âï¸ âï¸
totem-video-thumbnailer âï¸ âï¸ âï¸ âï¸
ffmpeg không áp dụng âï¸ âï¸ âï¸

Ghi chú: sử dụng opj_decompress hoặc totem-video-thumbnailer được khuyến nghị vì chúng cung cấp tốc độ giải nén nhanh hơn đáng kể và tạo ra các hình thu nhỏ nhỏ hơn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.