{"id":3283,"date":"2021-07-23T08:55:39","date_gmt":"2021-07-23T08:55:39","guid":{"rendered":"https:\/\/www.bearloga.space\/?page_id=3283"},"modified":"2021-07-23T08:55:39","modified_gmt":"2021-07-23T08:55:39","slug":"opencv-risovanie-kruga","status":"publish","type":"page","link":"https:\/\/www.bearloga.space\/en\/opencv-risovanie-kruga\/","title":{"rendered":"OpenCV \u2014 \u0440\u0438\u0441\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u0440\u0443\u0433\u0430"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0444\u043e\u0440\u043c\u044b, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u043a\u0440\u0443\u0433, \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a, \u043b\u0438\u043d\u0438\u044f, \u044d\u043b\u043b\u0438\u043f\u0441, \u043f\u043e\u043b\u0438\u043b\u0438\u043d\u0438\u0438, \u0432\u044b\u043f\u0443\u043a\u043b\u044b\u0435, \u043f\u043e\u043b\u0438\u043b\u0438\u043d\u0438\u0438, \u043f\u043e\u043b\u0438\u043b\u0438\u043d\u0438\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u043f\u0430\u043a\u0435\u0442\u0430&nbsp;<strong>org.opencv.imgproc<\/strong>&nbsp;.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u043e\u043a\u0440\u0443\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043c\u0435\u0442\u043e\u0434&nbsp;<strong>circle ()<\/strong>&nbsp;\u043a\u043b\u0430\u0441\u0441\u0430&nbsp;<strong>imgproc<\/strong>&nbsp;.&nbsp;\u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u044d\u0442\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u2014<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">circle(img, center, radius, color, thickness)\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u2014<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>mat<\/strong>&nbsp;\u2014 \u043e\u0431\u044a\u0435\u043a\u0442&nbsp;<strong>Mat,<\/strong>&nbsp;\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u043d \u043a\u0440\u0443\u0433.<\/li><li><strong>\u0442\u043e\u0447\u043a\u0430<\/strong>&nbsp;\u2014 \u043e\u0431\u044a\u0435\u043a\u0442&nbsp;<strong>Point,<\/strong>&nbsp;\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0446\u0435\u043d\u0442\u0440 \u043a\u0440\u0443\u0433\u0430.<\/li><li><strong>radius<\/strong>&nbsp;\u2014 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0442\u0438\u043f\u0430&nbsp;<strong>integer,<\/strong>&nbsp;\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f \u0440\u0430\u0434\u0438\u0443\u0441 \u043a\u0440\u0443\u0433\u0430.<\/li><li><strong>\u0441\u043a\u0430\u043b\u044f\u0440<\/strong>&nbsp;\u2014&nbsp;<strong>\u0441\u043a\u0430\u043b\u044f\u0440\u043d\u044b\u0439<\/strong>&nbsp;\u043e\u0431\u044a\u0435\u043a\u0442, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0446\u0432\u0435\u0442 \u043a\u0440\u0443\u0433\u0430.&nbsp;(\u0411\u0413\u0420)<\/li><li><strong>\u0442\u043e\u043b\u0449\u0438\u043d\u0430<\/strong>&nbsp;\u2014&nbsp;<strong>\u0446\u0435\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e,<\/strong>&nbsp;\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0435 \u0442\u043e\u043b\u0449\u0438\u043d\u0443 \u043a\u0440\u0443\u0433\u0430;&nbsp;\u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u0449\u0438\u043d\u044b \u0440\u0430\u0432\u043d\u043e 1.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mat<\/strong>&nbsp;\u2014 \u043e\u0431\u044a\u0435\u043a\u0442&nbsp;<strong>Mat,<\/strong>&nbsp;\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u043d \u043a\u0440\u0443\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u0442\u043e\u0447\u043a\u0430<\/strong>\u00a0\u2014 \u043e\u0431\u044a\u0435\u043a\u0442\u00a0<strong>Point,<\/strong>\u00a0\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0446\u0435\u043d\u0442\u0440 \u043a\u0440\u0443\u0433\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>radius<\/strong>&nbsp;\u2014 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0442\u0438\u043f\u0430&nbsp;<strong>integer,<\/strong>&nbsp;\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f \u0440\u0430\u0434\u0438\u0443\u0441 \u043a\u0440\u0443\u0433\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u0441\u043a\u0430\u043b\u044f\u0440<\/strong>&nbsp;\u2014&nbsp;<strong>\u0441\u043a\u0430\u043b\u044f\u0440\u043d\u044b\u0439<\/strong>&nbsp;\u043e\u0431\u044a\u0435\u043a\u0442, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0446\u0432\u0435\u0442 \u043a\u0440\u0443\u0433\u0430.&nbsp;(\u0411\u0413\u0420)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u0442\u043e\u043b\u0449\u0438\u043d\u0430<\/strong>&nbsp;\u2014&nbsp;<strong>\u0446\u0435\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e,<\/strong>&nbsp;\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0435 \u0442\u043e\u043b\u0449\u0438\u043d\u0443 \u043a\u0440\u0443\u0433\u0430;&nbsp;\u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u0449\u0438\u043d\u044b \u0440\u0430\u0432\u043d\u043e 1.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u043f\u0440\u0438\u043c\u0435\u0440<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442, \u043a\u0430\u043a \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u043a\u0440\u0443\u0433 \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0438 \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u0435\u0433\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u043a\u043d\u0430 JavaFX.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">import java.awt.image.BufferedImage;\n\nimport java.io.ByteArrayInputStream;\nimport java.io.InputStream;\nimport javax.imageio.ImageIO;\n\nimport javafx.application.Application;\nimport javafx.embed.swing.SwingFXUtils;\nimport javafx.scene.Group;\nimport javafx.scene.Scene;\nimport javafx.scene.image.ImageView;\nimport javafx.scene.image.WritableImage;\nimport javafx.stage.Stage;\n\nimport org.opencv.core.Core;\nimport org.opencv.core.Mat;\nimport org.opencv.core.MatOfByte;\nimport org.opencv.core.Point;\nimport org.opencv.core.Scalar;\nimport org.opencv.imgcodecs.Imgcodecs;\nimport org.opencv.imgproc.Imgproc;\n\npublic class DrawingCircle extends Application {\n   Mat matrix = null;\n   \n   @Override\n   public void start(Stage stage) throws Exception {\n      \/\/ Capturing the snapshot from the camera\n      DrawingCircle obj = new DrawingCircle();\n      WritableImage writableImage = obj.LoadImage();\n\n      \/\/ Setting the image view\n      ImageView imageView = new ImageView(writableImage);\n\n      \/\/ setting the fit height and width of the image view\n      imageView.setFitHeight(600);\n      imageView.setFitWidth(600);\n\n      \/\/ Setting the preserve ratio of the image view\n      imageView.setPreserveRatio(true);\n\n      \/\/ Creating a Group object\n      Group root = new Group(imageView);\n\n      \/\/ Creating a scene object\n      Scene scene = new Scene(root, 600, 400);\n\n      \/\/ Setting title to the Stage\n      stage.setTitle(\"Drawing Circle on the image\");\n      \n      \/\/ Adding scene to the stage\n      stage.setScene(scene);\n\n      \/\/ Displaying the contents of the stage\n      stage.show();\n   }      \n   public WritableImage LoadImage() throws Exception {\n      \/\/ Loading the OpenCV core library\n      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );\n\n      \/\/ Reading the Image from the file and storing it in to a Matrix object\n      String file =\"E:\/OpenCV\/chap8\/input.jpg\";\n      Mat matrix = Imgcodecs.imread(file);\n\n      <strong>\/\/Drawing a Circle\n      Imgproc.circle (\n         matrix,                 \/\/Matrix obj of the image\n         new Point(230, 160),    \/\/Center of the circle\n         100,                    \/\/Radius\n         new Scalar(0, 0, 255),  \/\/Scalar object for color\n         10                      \/\/Thickness of the circle\n      );<\/strong>\n      \n      \/\/ Encoding the image\n      MatOfByte matOfByte = new MatOfByte();\n      Imgcodecs.imencode(\".jpg\", matrix, matOfByte);\n\n      \/\/ Storing the encoded Mat in a byte array\n      byte[] byteArray = matOfByte.toArray();\n\n      \/\/ Displaying the image\n      InputStream in = new ByteArrayInputStream(byteArray);\n      BufferedImage bufImage = ImageIO.read(in);\n      this.matrix = matrix;\n      \n      \/\/ Creating the Writable Image\n      WritableImage writableImage = SwingFXUtils.toFXImage(bufImage, null);\n\n      return writableImage;\n   }\n   public static void main(String args[]) {\n      launch(args);\n   }\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0444\u043e\u0440\u043c\u044b, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u043a\u0440\u0443\u0433, \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a, \u043b\u0438\u043d\u0438\u044f, \u044d\u043b\u043b\u0438\u043f\u0441, \u043f\u043e\u043b\u0438\u043b\u0438\u043d\u0438\u0438, \u0432\u044b\u043f\u0443\u043a\u043b\u044b\u0435, \u043f\u043e\u043b\u0438\u043b\u0438\u043d\u0438\u0438, \u043f\u043e\u043b\u0438\u043b\u0438\u043d\u0438\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u044b [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[108],"tags":[],"class_list":["post-3283","page","type-page","status-publish","hentry","category-opencv"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/pages\/3283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/comments?post=3283"}],"version-history":[{"count":0,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/pages\/3283\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/media?parent=3283"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/categories?post=3283"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/tags?post=3283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}