Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- package przetwarzanieobrazu;
- import org.opencv.core.Core;
- import static org.opencv.core.Core.FILLED;
- import static org.opencv.core.Core.ROTATE_90_CLOCKWISE;
- import static org.opencv.core.Core.flip;
- import org.opencv.core.CvType;
- import static org.opencv.core.CvType.CV_8UC4;
- import org.opencv.core.Mat;
- import org.opencv.core.MatOfPoint2f;
- import org.opencv.core.Point;
- import org.opencv.core.Rect;
- import org.opencv.core.Scalar;
- import org.opencv.core.Size;
- import org.opencv.highgui.HighGui;
- import static org.opencv.highgui.HighGui.WINDOW_AUTOSIZE;
- import static org.opencv.highgui.HighGui.destroyAllWindows;
- import static org.opencv.highgui.HighGui.imshow;
- import static org.opencv.highgui.HighGui.namedWindow;
- import static org.opencv.highgui.HighGui.waitKey;
- import org.opencv.imgcodecs.Imgcodecs;
- import static org.opencv.imgcodecs.Imgcodecs.IMREAD_GRAYSCALE;
- import static org.opencv.imgcodecs.Imgcodecs.IMREAD_UNCHANGED;
- import static org.opencv.imgcodecs.Imgcodecs.imread;
- import org.opencv.imgproc.Imgproc;
- import static org.opencv.imgproc.Imgproc.COLOR_RGBA2RGB;
- import static org.opencv.imgproc.Imgproc.GC_INIT_WITH_RECT;
- import static org.opencv.imgproc.Imgproc.cvtColor;
- import static org.opencv.imgproc.Imgproc.grabCut;
- import static org.opencv.imgproc.Imgproc.rectangle;
- import static org.opencv.imgproc.Imgproc.warpAffine;
- /**
- *
- * @author Lukasz Laskowski
- */
- public class PrzetwarzanieObrazu {
- static {
- System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
- }
- /**
- * @param args the command line arguments
- */
- public static void zad1() {
- Mat src = Imgcodecs.imread("img.jpg", IMREAD_UNCHANGED);
- System.out.println("img loaded!");
- Mat nextImage = new Mat();
- Size sizeImage = src.size();
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", src);
- asd
- waitKey(0);
- destroyAllWindows();
- }
- public static void zad2() {
- Mat image = Imgcodecs.imread("img.jpg", IMREAD_UNCHANGED);
- System.out.println("img loaded!");
- Mat nextImage = new Mat();
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", image);
- waitKey(0);
- flip(image, nextImage, 0);
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", nextImage);
- waitKey(0);
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", image);
- waitKey(0);
- flip(image, nextImage, +1);
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", nextImage);
- waitKey(0);
- destroyAllWindows();
- }
- public static void zad3() {
- Mat image = Imgcodecs.imread("img.jpg", IMREAD_UNCHANGED);
- System.out.println("img loaded!");
- Mat rotatedImage = new Mat();
- Size sizeImage = image.size();
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", image);
- waitKey(0);
- Core.rotate(image, rotatedImage, Core.ROTATE_90_CLOCKWISE);
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", rotatedImage);
- waitKey(0);
- destroyAllWindows();
- }
- public static void zad4() {
- Mat originalImage = Imgcodecs.imread("img.jpg", IMREAD_UNCHANGED);
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", originalImage);
- waitKey(0);
- int cropCenterX=300;
- int cropCenterY=300;
- int cropWidth=500;
- int cropHeight=500;
- Rect rectCrop = new Rect(cropCenterX, cropCenterY, cropWidth, cropHeight);
- Mat croppedImage = new Mat(originalImage, rectCrop);
- namedWindow("ZmienionyUkasz", WINDOW_AUTOSIZE);
- imshow("ZmienionyUkasz", croppedImage);
- waitKey(0);
- namedWindow("ZmienionyUkasz", WINDOW_AUTOSIZE);
- imshow("ZmienionyUkasz", originalImage.submat(rectCrop));
- waitKey(0);
- destroyAllWindows();
- }
- public static void zad5() {
- Mat image = Imgcodecs.imread("img.jpg", IMREAD_UNCHANGED);
- System.out.println("img loaded!");
- Size sizeImage = image.size();
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", image);
- waitKey(0);
- Mat resizeimage = new Mat();
- Mat resizeimage1 = new Mat();
- Mat resizeimage2 = new Mat();
- Mat resizeimage3 = new Mat();
- //*********************************************RESIZE
- Imgproc.resize(image, resizeimage, new Size(2*sizeImage.height, 2*sizeImage.width));
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", resizeimage);
- waitKey(0);
- Imgproc.resize(image, resizeimage1, new Size(4*sizeImage.height, 4*sizeImage.width));
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", resizeimage1);
- waitKey(0);
- //*********************************************PYRUP
- Imgproc.pyrUp(image, resizeimage2, new Size(2*sizeImage.height, 2*sizeImage.width));
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", resizeimage2);
- waitKey(0);
- // Imgproc.pyrUp(image, resizeimage3, new Size(4*sizeImage.height, 4*sizeImage.width));
- // namedWindow("Ukasz", WINDOW_AUTOSIZE);
- // imshow("Ukasz", resizeimage3);
- // waitKey(0);
- //************* 4 NIE JEST DZIELNIKIEM 2
- destroyAllWindows();
- }
- public static void zad6() {
- Mat image = Imgcodecs.imread("img.jpg", IMREAD_UNCHANGED);
- System.out.println("img loaded!");
- Size sizeImage = image.size();
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", image);
- waitKey(0);
- Mat resizeimage = new Mat();
- Mat resizeimage1 = new Mat();
- Mat resizeimage2 = new Mat();
- Mat resizeimage3 = new Mat();
- //*********************************************RESIZE
- Imgproc.resize(image, resizeimage, new Size(sizeImage.height/2, sizeImage.width/2));
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", resizeimage);
- waitKey(0);
- Imgproc.resize(image, resizeimage1, new Size(sizeImage.height/4, sizeImage.width/4));
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", resizeimage1);
- waitKey(0);
- //*********************************************PYRUP
- Imgproc.pyrDown(image, resizeimage2, new Size(sizeImage.height/2, sizeImage.width/2));
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", resizeimage2);
- waitKey(0);
- //// Imgproc.pyrDown(image, resizeimage3, new Size(sizeImage.height/4, sizeImage.width/4));
- // namedWindow("Ukasz", WINDOW_AUTOSIZE);
- //imshow("Ukasz", resizeimage3);
- /// waitKey(0);
- //************* 4 NIE JEST DZIELNIKIEM 2
- destroyAllWindows();
- }
- public static void zad7() {
- Mat image = Imgcodecs.imread("img.jpg", IMREAD_UNCHANGED);
- System.out.println("img loaded!");
- Size sizeImage = image.size();
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", image);
- waitKey(0);
- Mat resizeimage = new Mat();
- Imgproc.pyrUp(image, resizeimage);
- Size sizeImage1 = resizeimage.size();
- System.out.println("przed: " + sizeImage.height + "x" +sizeImage.width);
- System.out.println("po: " + sizeImage1.height + "x" +sizeImage1.width);
- double wynik = sizeImage1.height/sizeImage.height;
- System.out.println(wynik);
- namedWindow("Ukasz", WINDOW_AUTOSIZE);
- imshow("Ukasz", resizeimage);
- waitKey(0);
- destroyAllWindows();
- //TRZEBA UŻYĆ RESIZE PONIEWAZ W PYRUP TRZEBA UZYWAC DZIENIKOW LICZBY 2
- }
- public static void main(String[] args) {
- zad1();
- //zad2();
- //zad3();
- //zad4();
- //zad5();
- //zad6();
- //zad7();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement